文件包含漏洞

文章目录

一、文件包含漏洞原理

本质上是网站的代码中有一个include函数,可以执行文件;黑客能通过参数等方式使用该函数执行指定的文件,这些文件中会有一些恶意的命令;所以叫文件包含漏洞。

php语言的include函数:执行目标文件中的内容;若文件中没有代码,直接输出原内容。

二、案例一:了解文件包含漏洞

靶场的代码文件:

黑客就是要执行这个include函数,所以请求参数中携带文件即可;这个文件是php代码可以访问到的,所以是服务器上的文件。

通过文件包含漏洞可以查看服务器敏感信息。

三、案例二:结合文件上传漏洞

php代码的include函数会执行文件中的php代码,如果网站有文件上传漏洞可以上传含有恶意代码的文件,再通过文件包含漏洞执行该文件。

3.1编辑恶意文件

include函数只是读取文件内容,有php代码就解析执行;所以可以通过图片携带恶意代码。一些网站可以上传那头像,那种地方可能有上传文件漏洞。

通过编辑文本方式编辑图片,插入php代码;该代码可以获取php服务端的各种信息。

3.2利用文件包含漏洞

需要使用绝对路径才能访问到。

四、案例三:结合日志文件进行文件包含漏洞

4.1原理

web服务会用日志记录在服务器上,将恶意代码传递到日志中,再通过文件包含漏洞访问到这些恶意代码。

这些日志是web服务的日志,与用户端的一些信息有关,可以通过抓包方式修改;

常见的web服务有Apache http和NGINX,它们的日志路径一般是固定的,可以推断出来;

4.2抓包修改请求体

抓到包后,在请求体的User-Agent中添加恶意代码,这些代码会记录在服务端的web服务日志中。放行请求。

4.3查找目标web服务中间件

通过浏览器插件就可以找到网站使用的什么web服务中间件。

雪瞳的指纹嗅探了解到该网站的web服务是Apache http;

Apache的日志目录一般是/var/log/httpd/access_log;

看一下靶场的日志,确实存在该代码。

4.4使用文件包含漏洞

4.5日志路径被修改了怎么办?

我们还可以通过apache的配置文件 去查看日志存放地址

apache的默认配置文件路径:/etc/httpd/conf/httpd.conf

搜索ServerRoot 找到关键信息ServerRoot "/etc/httpd"

搜索CustomLog 找到关键信息CustomLog "logs/access_log"

/etc/httpd/logs/access_log

五、远程文件包含漏洞

本质上也文件包含漏洞相同,也是传递文件给后端代码, 但是这个远程文件包含漏洞可以传递网络上的文件如http://......

危害更高,黑客不需要上传任何文件 只需要在自己的服务器 搭建一个恶意代码就可以

例如:http://localhost/vul/hacker/file_include/index.php?lang=http://127.0.0.1/a.txt

a.txt文件中含有恶意代码。

伪协议 比如我们正常去访问一些文件

但是php中里面自带了一些函数去读取

比如file:///etc/passwd

以及这个:php://filter/read/convert.base64-encode/resource=/etc/httpd/logs/access_log

解码网站:https://www.toolhelper.cn/EncodeDecode/Base64

六、防御方法

1、代码审计 查看用了include函数的地方 有没有什么风险

2、安全审计 查看一些危险配置 能不开的就不开

3、使用白名单 在包含之前要 看这个文件在不在白名单里面 如果不在就直接拦截

相关推荐
曾令胜8 分钟前
云服务器被攻击后分析恶意脚本修复漏洞
网络安全·安全威胁分析
菩提小狗16 小时前
每日安全情报报告 · 2026-11-09
网络安全·漏洞·cve·安全情报·每日安全
东姬AI1 天前
挖出948个内核漏洞、自动写补丁:GPT-6 Cyber把AI推进“实战岗“,内容行业还卡在哪一关?
人工智能·网络安全·openai·gpt-6
ppo_wu2 天前
解决夸克网盘自动修改PDF打开方式的方法
经验分享·安全·网络安全
kingx32 天前
Bugku 逆向 MatrixHunter:黑盒 oracle + GF(2) 消元出唯一解
网络安全·矩阵·逆向·ctf
菩提小狗3 天前
每日安全情报报告 · 2026-11-07
网络安全·漏洞·cve·安全情报·每日安全
不庸.3 天前
theHarvester 入门教程:从装好到看懂输出
安全·web安全·网络安全·开源·安全性测试
liferecords4 天前
OpenAI 把「Critical」级挖洞模型交付出去了:GPT-6 Cyber 正式发布,越界率压到 1% 以下
网络安全·openai·ai安全·模型发布
FungLeo4 天前
成为全栈·基础补充·Web 安全基础:XSS、CSRF 与 SQL 注入
web安全·网络安全·xss·csrf·sql注入·成为全栈
菩提小狗5 天前
每日安全情报报告 · 2026-11-05
网络安全·漏洞·cve·安全情报·每日安全