目录
Pass-1
Pass-2
Pass-3
Pass-4
Pass-5
Pass-6
Pass-7
Pass-8
Pass-9
Pass-10
🌈嗨!我是Filotimo__🌈。很高兴与大家相识,希望我的博客能对你有所帮助。
💡本文由Filotimo__✍️原创,首发于CSDN📚。
📣如需转载,请事先与我联系以获得授权⚠️。
🎁欢迎大家给我点赞👍、收藏⭐️,并在留言区📝与我互动,这些都是我前进的动力!
🌟我的格言:森林草木都有自己认为对的角度🌟。
Pass-1
在桌面生成1.png文件,内容为:
<?phpphpinfo();?>
上传1.png,用bp抓包,修改后缀png为php,然后放包:
复制文件路径到新窗口,打开成功
Pass-2
步骤同一
Pass-3
观察源码 $deny_ext = array('.asp','.aspx','.php','.jsp');
上传1.png,bp抓包,修改后缀png为phtml,放包,复制文件路径到新窗口,打开成功。
Pass-4
观察源码 $deny_ext = array(...);发现没有过滤.htaccess
在桌面生成.htaccess.png文件,内容为:
SetHandler application/x-httpd-php
上传.htaccess.png,bp抓包,修改后缀.htaccess.png为.htaccess,放包,上传1.png,复制文件路径到新窗口,打开成功:
Pass-5
观察源码 $deny_ext = array(...);发现没有过滤.user.ini
在桌面生成.user.ini文件,内容为:
auto_prepend_file=1.png
先上传.user.ini,再上传1.png,复制文件路径到新窗口,在路径中将1.png改为readme.php,打开成功:
Pass-6
观察源码,发现没有使用strtolower()函数转换小写,上传1.png,用bp抓包,修改后缀png为Php,放包,复制文件路径到新窗口,打开成功。
Pass-7
观察源码,发现没有使用trim()函数去除空格,上传1.png,用bp抓包,修改后缀png为php ,php的后面有一个空格,放包,复制文件路径到新窗口,打开成功。
Pass-8
观察源码,发现没有使用deldot()函数去删除文件名末尾的点,上传1.png,用bp抓包,修改后缀png为php.,php的后面有一个点,放包,复制文件路径到新窗口,打开成功。
Pass-9
观察源码,发现没有使用str_ireplacet()函数去除特殊字符串::$DATA,上传1.png,用bp抓包,修改后缀png为php::$DATA,放包,复制文件路径到新窗口,去掉路径末尾的::$DATA,打开成功。
Pass-10
观察源码,发现既有trim()函数,又有deldot()函数,上传1.png,用bp抓包,修改后缀png为php. .,php的后面为点空格点,放包,复制文件路径到新窗口,打开成功。