Hoşgeldin Misafir

Wordpress xmlrpc.php -common vulnerabilites Ne İşe Yarar.

Codex

11 Ara 2017
1,473 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Ziyaret ettiğiniz birçok wordpress sitesinde bir / xmlrpc.php dosyası görmüş olabilirsiniz, hatta http://site.com/wp adresini ziyaret ettiğinizde görüntülenen hatayı (XML-RPC sunucusu yalnızca POST isteklerini kabul eder) arama yapmayı denemiş olabilirsiniz. / xmlrpc.php . Bu yazıya xmlrpc.php dosyasıyla ilişkili ortak güvenlik açıklarını vurgulamaya çalışacağım.--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font,]XML-RPC nedir?--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]https://codex.wordpress.org/XML-RPC_SupportWordPress üzerinde XML-RPC aslında bir API veya “uygulama programı arayüzü” dir. Mobil uygulamalar, masaüstü uygulamaları ve diğer hizmetleri WordPress sitenizle konuşma yeteneği veren geliştiriciler sağlar. WordPress'in sağladığı XML-RPC API'sı, geliştiricilere, web arayüzü üzerinden WordPress'e giriş yaptığınızda yapabileceğiniz birçok şeyi yapabileceğiniz uygulamaları (sizin için) yazmanın bir yolunu sunar. Bunlar şunları içerir:--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Bir gönderi yayınla--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Bir gönderiyi düzenle--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Bir gönderiyi sil.--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Yeni bir dosya yükleyin (örneğin bir yazı için resim)--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Yorumların bir listesini alın--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Yorumları düzenle--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font,]XML-RPC'deki Ortak Güvenlik Açıkları--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]XML-RPC ile ilişkili ana zayıflıklar şunlardır: Brute force saldırıları: Attackers xmlrpc kullanarak WordPress'e giriş yapmayı dener . php 
Bunun nasıl yapıldığını ve herhangi bir olası güvenlik açıkları için bir wordpress sitesini test etmeye çalışırken bunu nasıl kullanabileceğinizi görelim.--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font,]BruteForce saldırısı--[/color]
  1. [font=medium-content-serif-font, Georgia, Cambria,]
    Http: // <targetWebSite.com> / <wordpress directory> /xmlrpc.php adresinde bulunan xmlrpc.php dosyasını açmaya çalıştığınızda ilk olarak gördüğünüz şey  budur.--
[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font, -apple-system, BlinkMacSystemFont,]
[img=700x330]https://cdn-images-1.medium.com/max/1600/1*QCLeyh4_c7Lqz1Diop8Piw.png[/img]--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]2) Proxy'nizi açın (burp kullanıyorum) ve isteği tekrar gönderin--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font, -apple-system, BlinkMacSystemFont,]
[img=700x290]https://cdn-images-1.medium.com/max/1600/1*udBXe2k6hbml7oDMo2vKBw.png[/img]--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]3) Şimdi yapılacak ilk şey bir POST isteği göndermek ve mevcut tüm yöntemleri listelemek, neden? çünkü böyle bir saldırı için bunlardan birini yapmak ve potansiyel olarak kullanmak için hangi eylemlerin mümkün olduğunu bilebiliriz. 
Tüm yöntemleri listeleme Resimde gösterildiği gibi aşağıdaki POST verileriyle bir POST isteği gönderin, tüm yöntemlerle bir yanıt alabilirsiniz.--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]<methodCall> 
<methodName> system.listMethods </ methodName> 
<params> </ params> 
</ methodCall>
--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font, -apple-system, BlinkMacSystemFont,]
[img=700x420]https://cdn-images-1.medium.com/max/1600/1*uyuglYka0HTfNNmH63KOpw.png[/img]--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Aşağıdakileri arayın, eğer kullanılabilir olduklarını görürseniz, o zaman saldırıya devam edebiliriz 
*) wp.getUserBlogs 
*) wp.getCategories 
*) metaWeblog.getUsersBlogs 
NOT: birkaç tane daha metod var ama bunlar en yaygın olarak kullanılabilir. Bunları daha önce ele aldım, sadece şu an hatırlayabildiğim şeylerden bahsediyorum.--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]3) Şimdi bruteforce gerçekleştirmek için POST isteğinde aşağıdakileri gönderin, daha iyi olabilecek herhangi bir geçerli kullanıcı ismini biliyorsanız  , geçerli kullanıcı adlarının bir listesini bulmak için wp-
scan'i öneririm , neredeyse tüm zamanların wordpress sitelerinde kullanıcı adı numaralandırmayı önleme, neden idk.--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]<methodCall> 
<methodName> wp.getUsersBlogs </ methodName> 
<params> 
<param> <value> admin </ value> </ param> 
<param> <value> pass </ value> </ param> 
</ params> 
</ methodCall>
--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font, -apple-system, BlinkMacSystemFont,]
[img=700x366]https://cdn-images-1.medium.com/max/1600/1*eBTG8E7oWk7xduAwV54I2g.png[/img]--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]4) şimdi bunu sadece davetsiz misafirlere ve bruteforce'a yükleyebilirsiniz. 
Eğer yanlış girişe yanlış girerseniz veya doğru bir 200 OK cevabı alacaksınız, bu nedenle doğru girişteki 
yanıtın sizin gibi bir saldırganı kullanmanız halinde yanıtın büyüklüğüne göre hangisinin doğru ve yanlış olduğuna karar  vermeniz gerekecek. takip etme--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font, -apple-system, BlinkMacSystemFont,]
[img=700x389]https://cdn-images-1.medium.com/max/1600/1*9c6oJHdOM3qH-yQ-ap16_Q.png[/img]--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font,]Diğer saldırılar? 
XSPA veya sadece tarama tarama!--[/color]
  1. [font=medium-content-serif-font, Georgia, Cambria,]Tüm yöntemleri listeleyin ve aşağıdaki 
    pingback.ping' için arama yapın. --
[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font, -apple-system, BlinkMacSystemFont,]
[img=700x351]https://cdn-images-1.medium.com/max/1600/1*-XzVAJxotVJ7iLvQOjSLMQ.png[/img]--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]2) pingback.ping dizesini bulmayı başarabilirseniz, devam edip sunucumuza bir ping işlemi yapın, netcat veya python server, nodejs server veya apache loglarını istediğiniz herhangi bir şekilde yapabilirsiniz. Nodejs http-serverını kullanacağım. 
Sunucunuzu başlatın ve aşağıdaki verileri postaya gönderin--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]<methodCall> 
<methodName> pingback.ping </ methodName> 
<params> <param> 
<value> <string> http: // <SUNUCU SİZİN>: < port> </ string> </ value> 
</ param> < param> <value> <string> http: // <SİTE'DEN BAZI VALİD BLOG> </ string> 
</ value> </ param> </ params> 
</ methodCall>
--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]Burada doldurulması gereken 2 şey var.  
1) Sunucunuzun  
linki 2) ping geri aramak için kullanılan wordpress sitesinden geçerli bir gönderinin bağlantısı--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font, -apple-system, BlinkMacSystemFont,]
[img=700x386]https://cdn-images-1.medium.com/max/1600/1*JaUYIZF8ZjDGGB7ocsZC-g.png[/img]--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]errorCode ve 0'dan daha büyük bir değer alırsanız yanıtta (<value> <int> 17 </ int> </ value>), bağlantı noktası açık demektir + bunu sunucu günlüklerinizi kontrol ederek doğrulayabilirsiniz.--[/color]

[color=rgba(0, 0, 0, 0.84)][font=medium-content-sans-serif-font, -apple-system, BlinkMacSystemFont,]
[img=700x355]https://cdn-images-1.medium.com/max/1600/1*iu-hKPCjWliYU_0QNbw73g.png[/img]--[/color]
[color=rgba(0, 0, 0, 0.84)][font=medium-content-serif-font, Georgia, Cambria,]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - ---[/color]