DVWA是一个学习Web漏洞的很好的工具,一个基于PHP/MYSQL环境写的一个web应用。如果你想学习web渗透测试测试遇见DVWA是你的幸运。这次分享使用DVWA实例,理解PHP中的文件包含漏洞的原理及其利用方法。
一、原理知识
PHP文件包含漏洞的产生原因是在通过PHP的函数引入文件时,由于传入的文件名没有经过合理的校验,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意的代码注入。
PHP文件包含漏洞分为本地文件包含漏洞(LFI)和远程文件包含漏洞(RFI),能够打开并包含本地文件的漏洞,被称为本地文件包含漏洞。利用本地文件包含漏洞,可以查看系统任意文件内容,如果具备一些条件,也可以执行命令。
二、低安全等级PHP文件包含
使用浏览器打开安装好的DVWA程序..1.3:/dvwa/login.PHP。账户密码登陆。
调整好安全级别之后,选择FileInclusion。
参数page的值是include.php可以尝试修改page的值。在dvwa的文件目录下存在一个phpinfo.php的文件,可以尝试打开。URL的值是: 上面所展示的是本地文件包含,远程文件包含需要在PHP.ini中修改配置。
;WhethertoallowthetreatmentofURLs(like allowurl_fopen=On allowurlinclude=On ;Magicquotesforin magic_quotes_gpc二off 查看源代码,结台DVWA\vulnerabilities\fi\index.PHP文件。
在低级别的时候没有对参数$file的值做任何处理。include($file)直接执行了$file传过来的值。从而导致可以任意文件包含。
三、中级安全等级PHP文件包含
首先调整DVWA的安全级别为中,再次查看源代码。
在中等级别的时候,对输入的$file参数利用str_replaceo函数进行了处理。将中科健康中国重要影响力人物北京治疗白癜风的费用要多少钱