在黑盒中 源码 数据库配置文件都是很不好找的,,但源码审计不同
所有的漏洞,成因都是相同的,但我们自以最基础的作为代表,
这里文件上传这个点可以配合文件包含一块利用,当某个站对数据处理不严时,存在sql注入,那也可能会有文件注入,
常见的文件目录穿越配合文件包含实现getshell
演示目录穿越的原理,这里通过readfile函数读取文件,注意file变量里有个正斜杆
<?php
if(isset($_GET['file'])){
readfile("file/".$_GET['file']);
}
第一种情况,读取同文件夹下的1.txt
然后我们利用目录阶乘符…/ 目录穿越到file文件夹下的1.txt,达到目录穿越
修复措施: 不使用文件名作为变量传输。
同时,这里写一个有文件包含功能点的php
<?php
$file = $_GET['name'];
if(isset($file)){
include ($file);
}
通过include函数包含同文件夹下的phpinfo,
可以看到可以本地包含,,这时候,,如果allow_url_include=on,我们可以尝试利用目录穿越和文件包含写入shell到我们可以访问的地方,