[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-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]
[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-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-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]
[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,]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-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]
[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]
- [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.--
[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]
- [font=medium-content-serif-font, Georgia, Cambria,]Tüm yöntemleri listeleyin ve aşağıdaki
' pingback.ping' için arama yapın. --
[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]



