文件包含漏洞完整指南:LFI/RFI/FFI 原理、读取敏感文件、PHP stream 利用、RCE、防御加固。
写在前面:合法学习边界
文件包含攻击只在授权测试环境进行。
一、文件包含攻击链

1
| ① LFI 读文件 → ② 写日志/环境变量 → ③ 包含日志 → ④ PHP stream → ⑤ RCE
|
二、利用方式
1
2
3
4
5
| LFI:读取 /etc/passwd / /proc/self/environ
RFI:远程包含 → 执行远程 WebShell
FFI:文件包含 → 文件上传组合 → RCE
PHP stream:php://filter/base64-decode/
data://text/plain,<?php eval($_POST[1])?>
|
三、防御加固
1
2
3
| 禁止动态文件包含 · 使用白名单
disable_functions 禁用敏感函数
WAF 规则拦截 ../ 等路径
|
四、小结
文件包含的核心是用户可控文件路径被包含执行。LFI 读文件 → 写日志 → 包含日志 = RCE。防御核心是禁止动态包含。