- Aynı saldırgan, 30’dan fazla WordPress eklentisini satın aldıktan sonra ilk commit’te arka kapı kodu ekleyerek tedarik zincirini enfekte etti
- Kötü amaçlı kod yaklaşık 8 ay boyunca gizli kaldı, ardından 2026 Nisan ayı başında etkinleşerek çok sayıda siteye spam bağlantılar ve yönlendirmeler enjekte etti
- WordPress.org, 7 Nisan 2026’da tek bir gün içinde ilgili 31 eklentiyi kalıcı olarak kapattı ve zorunlu güncelleme dağıttı
- Saldırgan, Flippa üzerinden ‘Essential Plugin’ portföyünü 6 haneli bir bedelle satın aldıktan sonra C2 alan adını gizlemek için Ethereum smart contract kullandı
- Bu olay, 2017’deki ‘Display Widgets’ vakasına benzer bir büyük ölçekli tedarik zinciri saldırısının tekrarı olarak, WordPress eklenti ekosistemindeki güven yönetimi eksikliğini ortaya koydu
WordPress eklenti tedarik zinciri saldırısı vakası
- 30’dan fazla WordPress eklentisi, aynı saldırgan tarafından devralındıktan sonra arka kapı yerleştirilmiş halde bulundu
- Saldırgan, Flippa üzerinden ‘Essential Plugin’ portföyünü 6 haneli bir bedelle satın aldı ve ilk commit’te kötü amaçlı kod ekledi
- Arka kapı 8 ay boyunca devre dışı şekilde gizli kaldı, ardından 2026 Nisan ayı başında etkinleşerek çok sayıda siteyi enfekte etti
- WordPress.org, 7 Nisan 2026’da tek bir gün içinde ilgili eklentilerden 31’ini kalıcı olarak kapattı
- Bu olay, 2017’deki ‘Display Widgets’ olayıyla benzer bir tedarik zinciri saldırısı kalıbının yeniden sahneye çıkması olarak değerlendiriliyor
Saldırının keşfi ve ilk müdahale
- İlk enfeksiyon, bir müşteri sitesindeki wp-admin güvenlik uyarısı üzerinden doğrulandı
- WordPress.org eklenti ekibi, “Countdown Timer Ultimate” eklentisinde yetkisiz erişime imkan veren kod bulunduğu uyarısını yaptı
- WordPress.org zorunlu güncelleme (v2.6.9.1) dağıttı, ancak bazı siteler o sırada zaten zarar görmüştü
- Güvenlik incelemesi sonucunda, eklentinin
wpos-analyticsmodülünün analytics.essentialplugin.com adresine bağlanarakwp-comments-posts.phpdosyasını indirdiği ve bunun üzerinden wp-config.php içine büyük çaplı PHP kod enjeksiyonu yapıldığı belirlendi
Kötü amaçlı yazılımın çalışma şekli
- Enjekte edilen kod, C2 sunucusundan spam bağlantılar, yönlendirmeler ve sahte sayfalar alıyor ve bunları yalnızca Googlebot’a gösteriyordu
- Saldırgan, C2 alan adını dinamik olarak yönetmek için Ethereum smart contract kullandı
- Alan adı, blockchain RPC endpoint’leri üzerinden sorgulandığı için klasik alan adı engellemesiyle durdurulamıyordu
- WordPress.org’un zorunlu güncellemesi yalnızca eklentinin eve-telefon-etme işlevini durdurdu; wp-config.php içindeki kötü amaçlı kod yerinde kaldı
Yedek analiziyle enfeksiyon zamanının izlenmesi
- CaptainCore’un restic yedekleri kullanılarak 8 farklı zamana ait
wp-config.phpdosya boyutları karşılaştırıldı- 6 Nisan 2026 04:22–11:06 UTC arasında dosya boyutu 3.345 bayttan 9.540 bayta çıktı
- Enfeksiyonun bu 6 saat 44 dakikalık aralıkta gerçekleştiği doğrulandı
Arka kapının eklenme zamanı ve kod yapısı
- Eklentinin 2.6.7 sürümünde (8 Ağustos 2025) 191 satır yeni kod eklenerek arka kapı yerleştirildi
- Değişiklik günlüğünde bunun “WordPress 6.8.2 uyumluluğu doğrulandı” şeklinde yazıldığı görüldü
- Eklenen kodun başlıca işlevleri
fetch_ver_info(), saldırgan sunucusundan gelen veriyi@unserialize()ile işliyorversion_info_clean(), uzaktan gelen verideki fonksiyon adını çalıştırıyor- Kimlik doğrulaması olmadan çağrılabilen bir REST API endpoint’i oluşturuyor (
permission_callback: __return_true)
- Bu yapı, rastgele fonksiyon çalıştırmaya (RCE) imkan veriyor ve 8 ay boyunca pasif kaldıktan sonra 5–6 Nisan 2026’da etkinleşti
Eklenti devralma süreci
- Orijinal geliştirme ekibi, 2015’ten beri eklentiler geliştiren Hindistan merkezli WP Online Support idi
- Daha sonra Essential Plugin olarak yeniden markalanıp 30’dan fazla ücretsiz ve ücretli eklenti işletmeye başladılar
- 2024 sonlarında gelirler %35–45 düşünce, tüm iş Flippa’da satışa çıkarıldı
- 2025 başında, SEO, kripto para ve online kumar pazarlaması geçmişi olan ‘Kris’ adlı bir kişi tarafından satın alındı
- Flippa, Temmuz 2025’te bu işlemi başarı hikayesi olarak blogunda yayımladı
- Satın alım sonrası ilk SVN commit’inde (8 Ağustos 2025) arka kapı kodu hemen eklendi
- 5–6 Nisan 2026’da
analytics.essentialplugin.com, tüm sitelere kötü amaçlı payload dağıtmaya başladı - 7 Nisan 2026’da WordPress.org, Essential Plugin’in tüm eklentilerini (31 adet) kalıcı olarak kapattı
Kapatılan eklentilerin listesi
- Accordion and Accordion Slider, Countdown Timer Ultimate, Popup Anything on Click, WP Blog and Widgets, WP Team Showcase and Slider dahil 30’dan fazla eklenti
- WordPress.org’da ilgili yazar aratıldığında sonuç çıkmıyor
analytics.essentialplugin.comşu anda{"message":"closed"}yanıtı döndürüyor
Geçmişteki benzer vakalar
- 2017’de, Daley Tias adlı biri, Display Widgets eklentisini (200 bin kurulum) 15.000 dolara satın alıp spam kod ekledi
- Sonrasında 9’dan fazla eklentiyi aynı yöntemle enfekte etti
- Bu olay, aynı yöntemin daha büyük ölçekte (30’dan fazla) yeniden uygulanmış hali olarak görülüyor
Hasar giderme ve yama çalışmaları
- WordPress.org’un zorunlu güncellemesi yalnızca geçici bir önlemdi
wpos-analyticsmodülünün kendisi hâlâ duruyordu
- Ekip, arka kapı modülünü tamamen kaldıran bir yamalı sürüm hazırladı
- 22 müşteri sitesinin 12’sinde Essential Plugin eklentileri bulundu, 10’u doğrudan yamalandı
- Yamalı sürümde
wpos-analyticsdizini silindi, yükleyici fonksiyon kaldırıldı ve sürüm adına-patchedeklendi
- Örnekler: Countdown Timer Ultimate, Popup Anything on Click, WP Testimonial with Widget
Elle yama yöntemi
wpos-analytics/dizinini silin- Ana eklenti dosyasındaki “Plugin Wpos Analytics Data Starts” veya
wpos_analytics_anlbloğunu kaldırın Version:başlığına-patchedekleyip yeniden sıkıştırınwp plugin install your-plugin-patched.zip --forceile kurunwp-config.phpdosya boyutu yaklaşık 6 KB arttıysa bunu aktif enfeksiyon durumu sayın ve tam kurtarma uygulayın
WordPress eklenti ekosistemindeki güven sorunu
- Son 2 haftada tedarik zinciri saldırıları art arda yaşandı
- Güvenilir eklentiler devralındıktan sonra kötü amaçlı kod eklendi
- WordPress.org commit yetkileri aynen devralındı ve doğrulama olmadan dağıtım yapıldı
- WordPress.org’da sahiplik değişikliği takibi veya kodun yeniden incelenmesi süreci yok
- Yeni committer eklendiğinde kullanıcı bildirimi ya da otomatik inceleme özelliği bulunmuyor
- Eklenti ekibinin müdahalesi hızlıydı, ancak arka kapı eklendikten sonra 8 ay boyunca tespit edilemedi
- WordPress site yöneticileri eklenti listesini gözden geçirmeli, Essential Plugin ailesindeki eklentileri derhal kaldırmalı veya yamalamalı ve
wp-config.phpdosyasını da mutlaka kontrol etmeli
8 yorum
On yıllardır WordPress kullanıyorum.
Yalnızca en az sayıda eklenti kullanıyorum ama yine de her zaman tedirginim.
Yine de statik sitelere kıyasla hâlâ daha kullanışlı olduğu için geçmek istemiyorum!
Son zamanlarda tedarik zinciri saldırılarıyla ilgili epey haber çıkıyor ya.
Aynen öyle. Son zamanlarda ciddi şekilde arttı.
WordPress gerçekten... durmadan sorun çıkarıyor. Zaten kullanıyorsanız, ilgili yazılarda EmDash gibi şeylere bakın.
Ben zaten bırakıp doğrudan statik sayfalara geçtim.
EmDash'i kurup denedim ama şimdilik aşırı yavaş. TTFB zaten en az 3 saniye çıkıyor; bunu gerçekten kullanılsın diye mi yapmışlar diye düşündürüyor.
Hah, anladım. O zaman ben sadece statikle yetineceğim, haha
Yapay zeka ile statik sayfa yönetiminin, eski kodlarla kaplanmış CMS'lerin yerini alabileceğini düşündürüyor gibi görünüyor.
Hacker News görüşleri
Mythos hakkında abartılı tepkiler her zaman komik geliyor
Otomatik zafiyet tespiti teknolojisi güvenlik sektörünü sarsabilir, ama asıl endişelenmemiz gereken şey bu değil
Mevcut teknoloji yığını ve kurumsal yönetişim zaten çağın gerisinde kalmış durumda
Durumu kötüleştiren başlıca etken ise kripto para oldu. Bu sayede hackleme milyarlarca dolarlık bir endüstri haline geldi ve Kuzey Kore gibi devletleri bile içine çekti
Artık sadece bağımlılıkları satın almak ya da çalışanlara para verip bir “hata” yapmalarını sağlamak da mümkün
Neredeyse hatasız yazılım yazabiliyoruz, ama büyük şirketleri bu ortamda güvende tutacak bir planımız yok
Otonom LLM ajanları fidye yazılımı grupları tarafından kullanılacak, ama bunun için FreeBSD exploit’i kullanmaları gerekmiyor
Gerçekte her hafta PrimeVue, Vue, Spring Boot, Oracle sürücüsü, Ansible, Nvidia sürücüsü ve benzerlerinde hatalarla karşılaşıyorum
Gerçekçi olarak tamamen kusursuz kod ancak uçak ya da uzay aracı gibi alanlarda mümkün olabilir
Çoğu geliştirici hatasız kod yazmak istemediği için değil, çevresel kısıtlar yüzünden bunu yapamıyor
Bu, teorik bir mesele değil, gerçek. Devlet düzeyinde finansman varsa içeriden insan satın almak çok daha kolay olur
OSS projelerinde büyük şirket yazılımlarına kıyasla daha az “WTF bug” var
Tek başına geliştirirken yapılmayacak hatalar, kurumlarda onay süreçleri veya alışkanlıklar nedeniyle olduğu gibi yayına alınıyor
“Bu gerçekten en iyi seçenek mi?” sorusunun sorulamadığı anormal kültür hata üretiyor
Küçük ekiplerde bunu değiştirmek kolay, ama büyük organizasyonlarda maliyeti yüksek
Web projelerinde hep “npm install” ile başlanıyor ve onlarca kütüphane otomatik olarak kuruluyor
Çoğu zaman yazarı bile hangi geçişli bağımlılıkların dahil olduğunu bilmiyor
Böyle bir yapıda tedarik zinciri saldırılarını doğrulama ihtimali neredeyse yok
Yakın zamanda yalnızca Python standart kütüphanesi ile hava durumu senkronizasyon aracı yazdım
requestsgibi harici paketlere gerek kalmadı ve bağımlılıksız olmanın huzurunu yaşadımKriptografi gibi çekirdek mantıklar doğrudan yazılmamalı, ama basit işlevler için bile kütüphanelere bağımlı olmak da fazla
Sürümler sabitse, paket satılıp içine arka kapı eklenmiş olsa bile siz elle güncelleme yapana kadar etkilenmiyorsunuz
Hatta otomatik olarak “patch version” PR’ı açan Dependabot daha korkutucu olabilir
sudo curl URL | bashgibi alışkanlıklarYazılım güncelleme ideolojisinin kendisinin sorunlu olduğunu düşünüyorum
Güncellemelerin güvenlik yaması gibi avantajları var, ama aynı zamanda geliştiricinin istemediği değişiklikleri dayatabilir ya da kötü niyetli hale gelebilirler
Özellikle bağımsız geliştiricilerin yaptığı WordPress eklentilerinde otomatik güncellemeye asla izin verilmemesi gerektiğini düşünüyorum
wordpress.org pazaryeri bu yapıyı desteklemediği için riskli
Daha önce Chrome eklentileriyle ilgili bir yorum yazmıştım; Chrome yerine WordPress koyunca da aynı şey geçerli
WordPress eklentileri için tedarik zinciri saldırı yüzeyi uzun zamandır riskliydi
Bunun nedeni, tekil geliştiricilerin yaptığı küçük eklentilerin çok sayıda kurulmasını teşvik eden ekosistem yapısı
Halihazırda güven kazanmış bir eklentiyi satın alıp kötüye kullanmak, çok verimli bir saldırı yöntemi
“Güncelleme bildirimi” doğrudan güven sinyali gibi çalıştığı için kullanıcılar yazarın değiştiğini bile fark etmiyor
Paket imzalama ve şeffaflık sistemi gerekli, ama WordPress güvenlik altyapısını iyileştirmede yavaş kalıyor
Yönetici paneli neredeyse IE6 araç çubuğu memi gibi görünüyordu
Çoğu kişi ücretsiz Securi veya Wordfence sürümünü kurup hiçbir ayar yapmadan tam güvenlik bekliyordu
Açık kötü amaçlı yazılımları engelliyor ama üçüncü taraf alan adlarından reklam bileşenleri enjekte eden türde bait-and-switch taktiklerine göz yumuyor
Bu seviyede olunca neredeyse tasarım gereği böyle denebilir
FAIR paket yöneticisi projesinin başarılı olamaması üzücü
fair.pm, atproto’dan ilham alan dağıtık bir yapı; merkezi depo olmadan herkes işletebiliyor
Paketler DID ile tanımlanıyor ve Socket gibi kurumlar analiz sonuçlarını “labeler” olarak ekleyebiliyor
Kullanıcılar belirli etiketlere sahip paketleri engelleyebiliyor, hatta yapay zeka tabanlı güvenlik analiz etiketleyicilerini kendileri de çalıştırabiliyor
Kusursuz değil ama merkezi paket yöneticilerine kıyasla çok daha iyi bir yaklaşım
Şu anda Typo3 topluluğu ile birlikte çalışılıyor ve diğer ekosistemlere doğru genişleniyor (yazan kişi FAIR eş başkanı)
Teşvik yapısı WordPress’ten daha iyi, ama yine de yeterli olmayabilir
Dağıtıklık özgürlük sağlıyor ama kullanıcı açısından rahatsızlık da büyük
Bu olayın ilginç yanı, eklentilerin Flippa üzerinden satın alınmış olması
Flippa, yalnızca WP’ye özel değil, genel bir yazılım alım satım pazaryeri
İyi niyetle devralınmış bağımsız uygulama veya eklentilerin sonradan silaha dönüştürülme ihtimali endişe verici
Bu tür uygulamalar saldırganlar için, gerçek işletmecilerden daha bile değerli olabilir
En korkutucu olan şey arka kapının kendisi değil, satın almanın fazla normal görünmesi
Güvenilir bir eklentiyi satın alıp güncelleme yayımlamak, meşru bakım faaliyetinden ayırt edilemiyor
Kullanıcının şüphelenmesini sağlayacak hiçbir işaret yok
Pazar rekabetini sınırlayan birleşme ve satın almalar bazen devlet onayı gerektiriyor
O halde güvenlik üzerinde ciddi etkisi olan satın almalar için de pazaryeri veya devlet onay süreci gerekmeli mi diye düşünüyorum
Mergers and acquisitions Vikipedi maddesine bakılabilir
WordPress eklentileri sayesinde harikaydı, ama artık tam da bu eklenti yapısı yüzünden tehlikeli bir ekosisteme dönüştü
Ben Hugo’ya geçtim, başkalarına da geçiş rehberini öneriyorum
Şirketler “IT outsourcing” yaparken ne kadar büyük bir kontrol kaybı yaşadıklarını tam olarak fark etmiyor gibi görünüyor