Oluşturmadığım bir yönetici hesabı ortaya çıktı
Son dönemdeki WordPress saldırılarının neredeyse tamamında ilk adım budur: bazen kullanıcı listesinden gizlenmiş bir yönetici hesabı oluşturmak ve böylece asıl açık kapatıldıktan sonra bile erişimi korumak.
Yönetici hesabı neden ilk hedeftir
Son aylarda belgelenen WordPress saldırılarının neredeyse hepsinde yönetici hesabı nihai amaç değildir: geri kalan her şeyi mümkün kılan araçtır. Bir açık, çoğu zaman tek bir istekle sınırlı, dar ve belirli bir bağlama bağlı bir erişim verir ve eninde sonunda kapatılır. Yönetici hesabı ise geniş, kalıcı ve sitenin gözünde tamamen meşru bir erişim verir. Bu hesap bir kez oluşturulduktan sonra saldırganın asıl açığa ihtiyacı kalmaz: hatalı eklentiyi güncelleyebilirsiniz, o yine ön kapıdan girer.
Yakın tarihli örnekler bu noktada birbirine benzer. Everest Forms Pro’daki kritik CVE-2026-3300 açığı 18 Mart 2026’da kapatıldı ve 13 Nisan 2026’dan itibaren aktif olarak istismar edildi; yayınlanan ele geçirilme göstergesi alışılmadık ölçüde basit: diksimarina adlı bir yönetici hesabı. Yaklaşık 200.000 aktif kurulumu olan Burst Statistics’in 3.4.0 ve 3.4.1 sürümlerini etkileyen CVE-2026-8181 açığında ise kimliği doğrulanmamış bir saldırgan, REST API isteği süresince bir yönetici hesabının kimliğine tamamen bürünebiliyor ve bu konumdan kendi yönetici hesaplarını oluşturabiliyordu. 3.4.2 sürümü 12 Mayıs 2026’da yayınlanmadan önce yirmi dört saat içinde 7.400’den fazla saldırı engellendi.
Hesap oluşturma her zaman ilk adım değildir. 22 Haziran 2026’da yayınlanan ShapedPlugin dağıtım zinciri ihlalinde, tuzaklı kod önce wp-config.php içeriğini ve sitenin yönetici hesaplarını dışarı sızdırıyordu. Orada hesap oluşturulmadı: okundu, üstelik listeye yeni bir satır eklemeden daha sonra geri dönmek için gereken her şeyle birlikte.
Gördükleriniz veya göremedikleriniz
- Yönetim panelindeki kullanıcı listesinde, Yönetici rolüne sahip tanımadığınız bir satır.
- Kullanıcı sayacının, gerçekte görünen satır sayısından daha yüksek bir toplam göstermesi.
- E-posta adresi tanıdığınız hiç kimseye ait olmayan, çoğu zaman genel bir alan adındaki bir yönetici.
- Ekibe katılan hiç kimseye karşılık gelmeyen bir kayıt tarihi.
- Kimse talep etmediği hâlde rolü yöneticiye yükseltilmiş mevcut bir hesap.
- Kimsenin tetiklemediği bir hesap oluşturma veya e-posta değişikliği bildirimi.
- Sildiğiniz bir hesabın saatler veya günler sonra yeniden belirmesi.
Bir hesap listede görünmeden var olabilir
En can sıkıcı durum, tanımadığınız bir satırı görmeniz değildir: bir hesap varken hiçbir şey görmemenizdir. WordPress kullanıcı listesini kendi filtrelerinden geçirerek oluşturur ve zararlı bir eklenti bu filtrelere bağlanarak bir satırı çıktıdan kaldırabilir. Patchstack’in Nisan 2025’te belgelediği kimlik avı kampanyası tam olarak bunu yapıyordu: kurbanın indirdiği ve WooCommerce güvenlik yaması gibi sunulan eklenti, sekiz karakterlik rastgele adlı bir yönetici hesabı oluşturuyor, ardından hem kendini eklenti listesinden hem de oluşturduğu hesabı gizliyordu.
Bu gizlemeyi hiçbir şey kurmadan aşan iki kontrol var. Birincisi: listenin üstünde belirtilen toplam kullanıcı sayısı ile gerçekte görüntülenen satır sayısını karşılaştırmak, sonra aynı karşılaştırmayı rol rol yapmak. Sayaç ile ekran arasındaki tek birimlik fark bile devam etmek için yeterlidir. İkincisi: veritabanındaki wp_users tablosunu phpMyAdmin veya barındırma sağlayıcınızın aracıyla doğrudan okumak — kurulumunuzun gerçekte kullandığı tablo önekini dikkate alarak. Veritabanı hiçbir PHP filtresinden geçmez; gerçeği söyleyen tek kaynak odur. Rollerin saklandığı wp_usermeta tablosuna da bakın: sessiz bir hesap yönetici yetkilerini orada alır.
Aynı uyarı komut satırı için de geçerlidir. WP-CLI önce WordPress’i, dolayısıyla eklentileri, dolayısıyla filtreleri yükler: yönetim panelinde bir hesabı gizleyen eklenti, aynı hesabı WP-CLI çıktısından da gizleyebilir. Aşağıdaki komut, kayıt tarihleriyle birlikte temiz bir liste almanın en hızlı yolu olmayı sürdürür; ancak hiçbir şey göstermiyorsa ve sayaç bir kullanıcı fazla diyorsa, sayaca inanın ve veritabanına bakın.
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered
wp user list --role=administrator --format=count
Hesaba dokunmadan önce not edilmesi gerekenler
-
Kayıt tarihini ve saatini not edin
<code>user_registered</code> alanı hesabın oluşturulduğu tam anı verir. Sonraki her adım bunun üzerine kurulur: bu olmadan hangi zaman aralığında arayacağımı bilemem.
-
Kullanıcı adını, e-posta adresini ve rolü not edin
Bu bilgileri sitenin dışında, bir dosyada veya notta saklarım. Hesap silindikten sonra geri getirilemezler ve aynı aktörü başka yerde tanımayı sağlayan şey onlardır.
-
Günlükleri dönmeden önce indirin
Barındırma sağlayıcısının erişim günlükleri çoğu zaman yalnızca birkaç gün saklanır. Kayıt gününü ve öncesindeki iki günü, aynı dönemin PHP hata günlükleriyle birlikte indiririm.
-
Aynı anda başka ne değiştiğine bakın
O tarih civarında oluşturulmuş veya değiştirilmiş dosyalar, olağan dışı zamanlanmış görevler, kurulan veya devre dışı bırakılan eklentiler, yayımlanan içerikler. Giriş noktası genelde oradadır, hesabın kendisinde değil.
-
Yalnızca yeni hesabı değil, diğerlerini de kontrol edin
Yöneticiye yükseltilmiş eski bir hesap, değiştirilmiş bir e-posta adresi, eklenmiş bir uygulama parolası: görünen satır bazen yemdir; siz onu bulup silerken ikinci bir giriş yolu yerinde kalır.
-
Ancak bundan sonra: silin, sıfırlayın, oturumları kapatın
Hesabı silin, tüm yöneticilerin parolalarını sıfırlayın, açık oturumları geçersiz kılın ve <code>wp-config.php</code> içindeki güvenlik anahtarlarını yeniden üretin.
Konuyla ilgili diğer sayfalar
-
Sitemin ele geçirilip geçirilmediğini doğrulama
Yalnızca kullanıcı listesinin ötesine geçen eksiksiz yöntem.
-
Sunucuda bilinmeyen bir dosya
Yüklemediğiniz bir dosyayla ne yapmalı ve geliş tarihi nasıl belirlenir.
-
Yönetim parolaları ve paylaşılan erişimler
Giriş noktası kapatıldıktan sonra neyin, hangi sırayla sıfırlanacağı.
İhtiyacınızı bir dakikada anlatın
Size bir anket daha değil, doğrudan bir tahmin sunabilmem için birkaç hedefli soru.