广州通和通信建设有限公司网站,wordpress 收费,免费如何做网页或网站,苏州行业网站建设报价一、基础知识介绍
在web后台开发的时候#xff0c;我们会使用PHP#xff0c;Java这种代码#xff0c;而在使用的过程中#xff0c;我们经常会使用包含函数#xff08;也就是调用#xff09;#xff0c;而很多时候#xff0c;前端用户在选择浏览时会调用包含的文件这无…一、基础知识介绍
在web后台开发的时候我们会使用PHPJava这种代码而在使用的过程中我们经常会使用包含函数也就是调用而很多时候前端用户在选择浏览时会调用包含的文件这无可避免但是开发人员对于要包含的这个文件没有进行安全考虑的时候就会导致攻击可以通过修改包含文件的位置来让任意代码执行文件包含漏洞分为本地和远程
你可能看到这里对于概念还是很模糊下面看一张图 本地的用户在访问web时可以访问Funcition1.php或者2.php文件由于文件
可以被前端用户控制如果在入口处没有对前端用户进行控制的话把用户传进来的其他文件也包含掉如对本地配置文件进行一定的包含../../php/php.ini从而导致配置文件或其他文件暴漏
如果工程师打开了远程调用的端口当用户命令包含远程URL黑客在自己的网站写恶意代码传入到后台让后台调用远程的恶意代码到本地就是远程的文件包含漏洞 例子调用 好了废话不多说我们通过本地的靶场来进行测试本地文件包含和远程文件包含漏洞
我们先随便进行选择一个可以很清楚的看到访问的是本地后面的一个php文件
那正常来说我们传入的都是后台正常的文件但是前端用户可以修改这个文件比如我的后台是WindowsWindows底下有很多固定的文件如host
我们多敲几个../一直到它根目录下
../../../../../../Windows/System32/drivers/etc/hosts
如此我们访问到了我们本地文件的host文件
我们可以看一下本地代码它对于本地的文件包含没有做任何的限制
默认情况下不支持但是在特殊情况下更改配置可以达到远程文件包含的效果
远端写一个一个一句话木马可以在本地执行
没开启前是不允许incldue和require访问的
看看配置文件吧默认开启和关闭 为了测试我现在把include打开 还是一样的当我们提交后还是目标文件的路径 我现在在我云服务器上写了一个一句话木马文件 好了执行 可以看后端代码
对前端传来的数据没有进行任何过滤也没有进行任何限制进行了include包含 二、怎么去深入利用 三、如何防范