一、通过页面报错找路径
1、存在注入时单引号爆路径
就像测试SQL注入一样在参数后面加上单引号,若页面返回内容可能爆出网站路径
http://www.test.com/xxx.php?id=100'
2、错误参数值爆路径
若第一种方式触发waf,可通过错误参数值爆网站路径
http://www.test.com/xxx.php?id=-100'
http://www.test.com/xxx.php?id=AbCdE'
3、通过搜索引擎获取
通过搜索引擎语法搜索页面报错内容可能获取到网站路径
Site:test.com warning
Site:test.com "fatal error"
4、nginx文件类型错误解析爆路径
要求Web服务器是nginx,且存在文件类型解析漏洞。利用nginx对应版本的解析漏洞,在图片地址后加/x.php,该图片不但会被当作php文件执行,还有可能爆出物理路径
http://www.test.com/xxx.jpg/x.php
…
二、根据一键/搭建平台找路径
1、搭建平台测试文件获取路径
网站通过XAMPP或者phpstudy等软件搭建的话,会存在一些测试文件,比如:探针或者phpinfo那一类文件
/test.php
/info.php
/phpinfo.php
/php_info.php
/1.php
/l.php //phpstudy的探针
2、配置文件获取路径
如果注入点有文件读取权限,就可以通过load_file函数读取配置文件,再从中寻找路径信息
Windows配置文件
c:\windows\php.ini //php配置文件
c:\windows\system32\inetsrv\MetaBase.xml //IIS虚拟主机配置文件
Linux配置文件
/etc/php.ini // php配置文件
/etc/httpd/conf.d/php.conf
/etc/httpd/conf/httpd.conf //Apache配置文件
/usr/local/apache/conf/httpd.conf
/usr/local/apache2/conf/httpd.conf
/usr/local/apache/conf/extra/httpd-vhosts.conf //虚拟目录配置文件
XAMPP配置文件
C:\xampp\htdocs //Xampp文件路径
C:\xampp\apache\conf/httpd.conf //httpd.com配置文件
C:\xampp\apache\onf\extra\httpd-vhosts.conf //vhosts.conf虚拟主机
phpstudy配置文件
C:\phpstudy\www //网站默认路径
C:\phpStudy\Apache\conf\httpd.conf //httpd.conf配置文件
C:\phpStudy\Apache\conf\extra\httpd-vhosts.conf //vhosts.conf虚拟主机
利用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/lect_lang.lib.php
/phpMyAdmin/libraries/mcrypt.lib.php
三、利用漏洞
1、配合远程代码执行漏洞
比如eval()函数可控的话,直接传入phpinfo();
,通过phpinfo页面中Document_Root参数获取网站绝对路径
…
GOT IT!
******************************************************
还有更多爆路径方法,等着慢慢积累吧~