文件上传之后缀名绕过

当目标限制了上传文件的后缀名之后,我们可以尝试以下方法进行绕过

1.大小写问题

例如,.Php .pHp .phP

2.空格问题

例如,"webshell.php " “webshell. php”

3."."问题

在windows中php会自动去除后缀名中最后的 “.” 的符号

4.::$DATA问题

windows下,php,在文件名后面加上::$DATA系统会把它当作文件流来进行处理,不会检测文件的后缀名,且保留::$DATA之前的文件名以及后缀

5.双写后缀名

有些站点判断方式会把文件后缀名替换为空字符,遇到这种情况我们只需要双写后缀名来绕过,
例如,yijuhua.phphpp
原理就是服务器把后缀名中的php进行替换,替换成空字符之后为被替换的剩余字符组成了php,从而达到绕过的效果

6.%00截断

%00截断经常用在服务端把文件路径和文件名加在一起进行判断后缀,
例如/upload/webshell.php%00webshell.jpg
在这里系统解析的时候会自动忽略%00后面的内容,最终解析为/upload/webshell.php
从而达到绕过的目的

你可能感兴趣的:(渗透测试,文件上传)