phpMyAdmin是一套开源的、基于Web的MySQL数据库管理工具。在其查找并替换字符串功能中,将用户输入的信息拼接进`preg_replace`函数第一个参数中。
在PHP5.4.7以前,`preg_replace`的第一个参数可以利用 进行截断,并将正则模式修改为e。众所周知,e模式的正则支持执行代码,此时将可构造一个任意代码执行漏洞。
以下版本受到影响:
- 4.0.10.16之前4.0.x版本
- 4.4.15.7之前4.4.x版本
- 4.6.3之前4.6.x版本(实际上由于该版本要求PHP5.5 ,所以无法复现本漏洞)
启动后,访问`http://192.168.28.4:8080`,即可看到phpMyAdmin的登录页面,账户:root,密码:root。
POC如下
运行POC:
python C:UserslenovoDesktopa.py -u root -p "root" http://192.168.28.4:8080 -c "system('id')"
推荐文章++++
本文始发于微信公众号(黑白之道):phpMyAdmin 4.0.x—4.6.2 远程代码执行漏洞
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论