一、文件包含功能
1、文件包含的作用:减小代码的荣誉
2、文件包含函数: include 、 require
3、文件包含的方式
静态文件包含------文件名是固定的------
a.php中存在普通的字符串,被b.php包含, a.php中的字符串会直接完成输出
a.php中存在可执行的PHP代码,被b.php包含, a.php中的代码会被直接解析
a.txt中存在可执行的PHP代码,被b.php包含, a.txt中的代码会被直接解析---被包含的文件无论是什么后 缀名,其中的代码均会被执行。
动态文件包含----被包含的文件名是动态传参的
二、文件包含漏洞理论
1、原理:由于用户不可控输入,导致了攻击者可以任意输入文件名,从而造成敏感信息泄露与系统权限
丢失
2、危害:
敏感信息泄露
系统权限丢失
3、场景
请求中传输的数据是文件名
4、文件包含漏洞分类
本地文件包含
远程文件包含
三、文件包含漏洞利用
1、 DVWA-LOW
调整安全等级
进入靶场
看源码
漏洞利用
更改被包含的文件名,将file1.php更改为file2.php
2、文件上传高级
看源码
做图片码
copy shell1.png/b+shell.php shell.png
调整安全等级为low
进入文件包含模块
利用相对路径包含上传的木马
利用木马获得系统权限