pikachu通关教程-目录遍历漏洞(../../)
目录遍历漏洞也可以叫做信息泄露漏洞、非授权文件包含漏洞等.
原理:目录遍历漏洞的原理比较简单,就是程序在实现上没有充分过滤用户输入的../之类的目录跳转符,导致恶意用户可以通过提交目录跳转来遍历服务器上的任意文件。
这里的目录跳转符可以是../,也可是../的ASCII编码或者是unicode编码等
当我们依次点击,会有两条url。
http://127.0.0.1:1000/pikachu/vul/dir/dir_list.php?title=jarheads.php
http://127.0.0.1:1000/pikachu/vul/dir/dir_list.php?title=truman.php
那我们可以猜测,假设他过滤存在问题,没有对../进行有效过滤,那我们就可以访问他的上级目录dir.php
可以去做一下CVE-2021-41773。靶场环境:
Vulhub - Docker-Compose file for vulnerability environment
关于方法这里总结网上的:
双写绕过
如果服务器后台过滤了…/,那我们可以输入…/./ -> ../
return super.execute(file, fullName != null ? fullName.replace("../", "") : "");
编码绕过
当服务器对../进行一个过滤是,我们可以进行url编码,例如:?filename=%2e%2e%2f/etc/passwd