Özet
PushEngage'ı etkileyen bir güvenlik olayına yanıt veriyoruz. Bir saldırgan, içerik dağıtım ağımızın (CDN) kimlik bilgilerine erişim sağladı ve bunu, bu ürünlerin müşteri sitelerine teslim ettiği kurcalanmış JavaScript dosyası sürümünü sunmak için kullandı. Sınırlı bir süre boyunca, betiğimizi yerleştiren siteler bu değiştirilmiş dosyayı doğrudan CDN'imizden yükledi.
Kötü amaçlı kod yalnızca oturum açmış WordPress yöneticileri için etkinleşti. Etkilenen bir sitede çalıştığında, gizli bir yönetici hesabı oluşturmaya ve gizlenmiş bir arka kapı eklentisi yüklemeye çalıştı, ardından verileri saldırgan tarafından kontrol edilen bir sunucuya gönderdi. Sıradan site ziyaretçileri hedef alınmadı, ancak kod bir saldırganın site kontrolünü ele geçirmesine izin verebileceğinden, etkilenen herhangi bir site ele geçirilmiş olarak kabul edilmelidir.
Kapsam – ne ulaşıldı ve ne ulaşılmadı:
Uygulama sunucularımız, kaynak kodumuz ve PushEngage hesap bilgilerinizin depolandığı sistemler ayrı olarak barındırılmaktadır ve ihlal edilmemiştir. Bizde bulunan hesap verilerine veya kişisel ayrıntılara erişildiğine dair herhangi bir kanıtımız bulunmamaktadır. İhlal, pazarlama web sitesi sunucumuzla ve üzerinde saklanan bir CDN API anahtarı aracılığıyla CDN hesabımızla sınırlı kaldı. Önemlisi, bu durum etkilenen site sahipleri için aciliyeti azaltmaz: sitenize teslim edilen dosya kurcalanmış, bu nedenle maruz kalma penceresindeyseniz aşağıdaki adımlar hala önemlidir.
Şimdi kimlerin harekete geçmesi gerekiyor: Sitenizde PushEngage aktifse ve bir yönetici maruz kalma penceresi sırasında oturum açmışsa, lütfen sitenizi ele geçirilmiş olarak kabul edin ve hemen [Nelerin kontrol edileceği ve ne yapılacağı](#what-to-check-and-do) bölümünü izleyin. En güvenilir kontroller, WordPress panosunda değil, sunucunuzda gerçekleşir.
Maruz kalma penceresi
CDN sağlayıcımızın günlüklerine dayanarak, kurcalanmış dosyalarla yetkisiz yapılandırma yaklaşık olarak 12 Haziran 2026 (UTC) tarihindeki birkaç saat boyunca yerindeydi. Kullanıcıların bir alt kümesi için, belirli CDN kenar konumlarından 14 Haziran'a (UTC) kadar sunulmaya devam etti. Etkilenen içeriğin sunulduğu kesin dönemi doğrulamaya devam ediyoruz ve ek ayrıntılar doğrulandıkça bu bildirimi güncelleyeceğiz.
Yalnızca bu pencere sırasında yönetici oturum açmış olarak etkilenen betiği yükleyen siteler ele geçirilmiş olabilir.
Etkilenen dosyalar, standart yerleştirme betikleriydi ve şunlardan sunuldu:
- https://clientcdn.pushengage.com/sdks/pushengage-web-sdk.js (PushEngage)
- https://clientcdn.pushengage.com/sdks/pushengage-subscription.js (PushEngage)
Ne oldu
Bir saldırgan, pazarlama web sitemizi barındıran sunucuya erişim sağlamak için üçüncü taraf bir WordPress eklentisindeki (UpdraftPlus) bilinen bir güvenlik açığından yararlandı. Bu sunucu tamamen ayrıdır: farklı barındırma, PushEngage'ı çalıştıran ve müşteri verilerini depolayan uygulama sunucularından farklı altyapı.
On the marketing server, the attacker located an API key for our CDN account. Using that key, they did not need to touch our application origin at all. They modified the files our CDN was serving, so the tampered script was delivered to sites embedding it for a limited period before we detected and reverted the change.
We have since remediated the marketing site, migrated it to a new server, and rotated all credentials, including the CDN API key.
What the malicious code did
On an affected site, when a logged-in administrator loaded a page, the code attempted to:
- Confirm it was running in a WordPress admin context, then collect the security tokens needed to act as that administrator.
- Create a hidden administrator account. Known accounts include developer_api1 ([email protected]) and randomized accounts of the form dev_xxxxxx.
- Install a self-hiding backdoor plugin that conceals itself from the dashboard and exposes an unauthenticated web shell and code-execution endpoint — effectively granting full control of the site.
- Send the new credentials and site details to an attacker-controlled server.
Because the backdoor hides from the WordPress admin screens, the dashboard alone will not tell you whether you’re affected. The reliable checks are on the server filesystem and via a server-side scan.
What to check and do
If you had PushEngage running on your website AND an administrator logged in to your WordPress site during the exposure window, do the following as soon as possible. If you’re unsure whether an admin was logged in, it’s safer to check.
- Remove rogue administrator accounts. Look for developer_api1 / [email protected] and any unexpected dev_xxxxxx accounts, and delete them.
- Check the filesystem – not just the dashboard — for the backdoor plugin. Under wp-content/plugins, look for content-delivery-helper (“Content Delivery Helper”) or database-optimizer (“Database Optimizer”). The disguise rotates, so trust what’s on disk over what the dashboard shows. Remove any you find.
- Run a server-side malware scan. Because the payload only ran for logged-in admins, dashboard and client-side checks are unreliable; a server-side scan is the most dependable way to find the backdoor or any further changes.
- If you find any indicator above, assume full compromise and rotate everything: administrator passwords, application/API keys, database credentials, and your WordPress security keys/salts in wp-config.php. The backdoor allowed arbitrary code execution, so additional persistence may exist.
If you find none of these indicators and had no administrator logged in during the window, your site is very likely unaffected and no action is required beyond standard hygiene (enable two-factor authentication, keeping software updated).
What we’ve done so far
- Detected the tampering and reverted the affected CDN files immediately; purged the CDN cache so clean files are served.
- Revoked and rotated the CDN API key and all related credentials.
- Zarar görmüş pazarlama web sitesi düzeltildi ve ayrı bir altyapıdaki yeni bir sunucuya taşındı.
- Uygulama sunucularımızın, kaynak kodumuzun ve müşteri verileri sistemlerimizin ayrı bir altyapıda erişim kanıtı göstermediği doğrulandı.
- Güvenlik ekibimizle iletişime geçtik ve teslimat günlüklerini almak için CDN sağlayıcımızla çalışıyoruz.
Durum ve devam eden risk
CDN yapılandırmamız düzeltildi ve kurcalanmış dosyalar kaldırıldı, etkilenen kimlik bilgileri döndürüldü ve pazarlama sunucumuzdaki giriş noktası düzeltildi.
Sistemlerimizi düzeltmek, zaten ele geçirilmiş bir siteyi temizlemez. Siteniz maruz kalma penceresi sırasında etkilendiyse, kötü niyetli yönetici hesabı ve gizli arka kapı eklentisi, yukarıdaki adımları kullanarak bunları kaldırana kadar yerinde kalır. Harekete geçmenizi öneririz. Ek ilgili bilgiler ortaya çıkarsa bu sayfayı güncelleyeceğiz.
Saldırı göstergeleri
Site sahipleri ve güvenlik ekipleri için:
Kötü niyetli hesaplar:
- developer_api1 / [email protected] (düzeltilmiş operatör hesabı)
- dev_xxxxxx / [email protected] (rastgele oluşturulmuş hesaplar)
Arka kapı eklentisi kılıkları (dönüyor; dosya sistemini kontrol edin):
- content-delivery-helper “İçerik Teslim Yardımcısı” v2.7.1
- database-optimizer “Veritabanı Optimize Edici” v2.9.4
Saldırgan altyapısı:
- tidio.cc (benzer alan adı — YASAL tidio.com DEĞİLDİR)
Benzersiz dizeler:
- jX9kM2nP4qR6sT8v (kötü amaçlı yazılım tarafından kullanılan şifreleme anahtarı)
- WPM Dosya Yöneticisi & Shell (arka kapı kabuk arayüzü)
İletişim
Sorularınız varsa, sitenizi kontrol etmek için yardıma ihtiyacınız varsa veya olağandışı bir şey fark ederseniz, [email protected] adresinden bizimle iletişime geçin. Olayla ilgili sorguları önceliklendiriyoruz ve bu sayfayı güncel tutacağız.
Müşterilerimizi korumak bizim için bir önceliktir. Bu olayın endişe verici olabileceğini anlıyoruz ve neden olduğu herhangi bir aksaklık için üzgünüz. Yukarıdaki bilgiler, şu ana kadar yaptığımız araştırmayı yansıtmaktadır ve ek ayrıntılar doğrulandıkça bu sayfayı güncelleyeceğiz.