crazymarky/pentest-skills/exploit-file-download
Claude Code and agent skill by crazymarky/pentest-skills
Trust tier 2
- community
Source check pending
Checking that the SKILL.md file is still in the repository.
任意文件下载与本地文件包含 (LFI) 漏洞检测和利用工具。使用 curl、ffuf、wget 等工具测试文件下载漏洞,支持路径遍历、伪协议利用、敏感文件读取。当用户需要测试文件下载功能、检测 LFI 漏洞、读取服务器敏感文件时使用此技能。
Install
npx vskill@latest install crazymarky/pentest-skills/exploit-file-downloadSKILL.md
任意文件下载与 LFI 检测和利用
授权声明
本 Skill 仅用于授权安全测试。使用前请确保:
- 获得目标系统所有者的明确书面授权
- 测试范围和授权内容已明确定义
- 遵守当地法律法规
未经授权的渗透测试是非法行为。
概述
本 Skill 专注于任意文件下载和本地文件包含 (LFI) 类型漏洞的检测与利用。
注意:很多端点实际上是LFI 模式(参数值被当作文件名包含执行),而非真正的文件下载。因此本 Skill 的核心是LFI/文件读取能力。
核心功能
1. LFI 漏洞检测
自动识别以下 LFI 特征:
- 文件包含模式:参数值被直接用作
include()或require()的文件路径 - 目录遍历模式:
../序列用于遍历目录 - 伪协议利用:
php://filter、php://input等 - 路径长度限制:超长路径可能被截断
- 特殊字符:
%00空字节可能绕过扩展名检查
2. 常见 LFI Payload
| 类型 | Payload | 适用场景 | |
|---|---|---|---|
| 文件包含 | ?title=index.php | 简单文件包含测试 | |
| 路径遍历 | ?title=../../../../etc/passwd | Linux 目录遍历 | |
| 伪协议 | ?title=php://filter/convert.base64-encode/resource=/etc/passwd | 读取敏感文件源码 | |
| Windows 路径 | ?title=C:\\Windows\\win.ini | Windows 文件读取 | |
| URL 编码 | ?title=%2e%2e%2f%2e%2e%2fetc/passwd | 绕过简单过滤 |
3. LFI 利用场景
- 源码读取:读取 PHP 源码进行分析
- 配置获取:读取数据库配置文件
- 日志投毒:通过 LFI 写入日志获取 RCE
- 图片马:配合文件上传 getshell
工具安装
必备工具
可选工具
使用方式
快速开始
场景 1: 基础路径遍历测试
场景 2: 伪协议利用
场景 3: 日志投毒 RCE
场景 4: 批量文件下载测试
场景 5: 绕过技术测试
工具选择指南
| 场景 | 推荐工具 | 命令示例 | |
|---|---|---|---|
| 快速单点测试 | curl | curl "URL?file=../etc/passwd" | |
| 批量 Payload 测试 | ffuf | ffuf -u URL -w payloads.txt | |
| 文件下载保存 | wget | wget -O output.txt "URL" | |
| 目录深度枚举 | 自定义脚本 | 见下方深度测试脚本 | |
| 响应内容分析 | grep/diff | grep -i "root:x:0" response.txt |
深度测试脚本
敏感文件路径清单
Linux 系统
Windows 系统
LFI Payload 清单
基础 Payload
编码 Payload
PHP 伪协议
测试清单
侦察阶段
- [ ] 识别所有可能存在 LFI 的参数(file, page, title, include, path, document)
- [ ] 测试基础路径遍历(../)
- [ ] 确认目标操作系统(Linux/Windows)
- [ ] 测试伪协议可用性(php://filter)
利用阶段
- [ ] 读取系统敏感文件(/etc/passwd, /etc/shadow)
- [ ] 读取 Web 应用配置文件(.env, config.php)
- [ ] 读取 PHP 源码分析应用逻辑
- [ ] 尝试日志投毒获取 RCE
- [ ] 尝试/proc/self/environ 利用
绕过测试
- [ ] URL 编码绕过(%2e%2e%2f)
- [ ] 双重 URL 编码(%252e%252e%252f)
- [ ] Unicode 混淆(%c0%ae%c0%ae%c0%af)
- [ ] 路径变体(..\, ..//, ..././)
- [ ] 空字节截断(%00)
- [ ] 扩展名绕过(file.php.jpg, file.php.)
替代方案
如果主要工具不可用,可以使用以下替代方案:
| 主要工具 | 替代方案 | 说明 | |
|---|---|---|---|
| curl | wget | wget -qO- "URL" 等同于curl -s "URL" | |
| ffuf | gobuster | gobuster dir -u URL -w payloads.txt | |
| ffuf | dirsearch | dirsearch -u URL -e php | |
| curl + grep | httpx + nuclei | 使用 nuclei LFI 模板 |
相关 Resources
- 技术文档:
references/lfi_techniques.md- LFI 完整技术详解 - PHP 伪协议:
references/php_wrappers.md- PHP wrapper 参考 - 绕过技术:
references/bypass_techniques.md- 编码和过滤绕过 - RCE 方法:
references/rce_methods.md- 远程代码执行汇总
与 results-storage 集成
发现 LFI 漏洞后,可以存储到数据库:
数据库位置: ./data/results.db
相关技能: results-storage - 查询数据、生成报告
最佳实践
- 始终编码 Payload - 使用 URL 编码避免被 WAF 拦截
- 从浅到深测试 - 先测试 1-2 层遍历,再逐步加深
- 记录响应长度 - 成功响应通常长度异常
- 使用 base64 - 读取源码时用 base64 避免代码执行
- 不要忽略 403/404 - 有些 WAF 返回假错误码
最后更新: 2026-03-05 版本: 2.0
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingexploit-file-download/SKILL.md
Popularity
- Repository stars
- 216
- Repository forks
- 26
- 7-day trend score
- 27
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/crazymarky/pentest-skills/exploit-file-download)