# Ctf Web

CTF Web攻击知识库, PHP弱比较绕过、命令注入空格绕过、eval回显技巧、SSTI注入链、反序列化利用链、PHP代码审计checklist、常见flag位置

- Repository: https://github.com/Netw0rkNoob/VulnClaw (3849 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add Netw0rkNoob/VulnClaw --skill ctf-web -g -a claude-code -y`
Codex: `npx skills add Netw0rkNoob/VulnClaw --skill ctf-web -g -a codex -y`
Cursor: `npx skills add Netw0rkNoob/VulnClaw --skill ctf-web -g -a cursor -y`
Gemini CLI: `npx skills add Netw0rkNoob/VulnClaw --skill ctf-web -g -a gemini-cli -y`

## Description

CTF Web攻击知识库, PHP弱比较绕过、命令注入空格绕过、eval回显技巧、SSTI注入链、反序列化利用链、PHP代码审计checklist、常见flag位置

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# CTF Web 攻击知识库

针对 CTF Web 题目的实战知识库，提供**具体绕过值、payload 模板、代码审计 checklist**，而非渗透测试方法论。

**与 `web-security-advanced` 的区别**：
- `web-security-advanced` → 渗透测试方法论（怎么系统性测试一个 Web 应用）
- `ctf-web` → CTF 实战知识库（PHP 弱比较用什么值、空格怎么绕过、eval 输出怎么回显）

## 核心原则

1. **精确值优于方法论**, 提供可直接使用的绕过值和 payload，而非"可以尝试"的建议
2. **工具验证**, 所有 payload 必须用 `fetch` 或 `python_execute` 工具实际发送验证，不猜测结果
3. **路径选择**, 多条利用路径时，优先选过滤最少、最简单的
4. **失败记录**, 某个 payload 失败后立即记录，不重复尝试

## First-Pass 工作流（CTF Web 题标准流程）

1. 访问目标 URL，查看页面源码、HTTP 头、Cookie
2. **如源码含 `highlight_file` → 用 python_execute + strip_tags 提取纯源码**（fetch 输出可能误读）
3. 检查 robots.txt、.git/、.svn/、备份文件（index.php.bak、www.zip 等）
4. 目录扫描（常见：/flag、/admin、/login、/upload、/api）
5. 如有源码 → 进入代码审计模式（见 `php-code-audit-checklist.md`）
6. 如无源码 → 主动探测注入点、上传点、文件包含

## 场景路由

| 场景 | 参考文档 | 核心内容 |
|------|---------|---------|
| ⭐ PHP 伪协议读文件（遇到文件包含/参数传文件名时优先尝试） | 见下方「PHP 伪协议速查」 | `php://filter` 直接读源码/flag |
| 源码提取 | `source-code-extraction.md` | strip_tags 提取、php://filter、.phps、备份文件、完整性校验 |
| PHP 弱比较/类型绕过 | `php-bypass-cheatsheet.md` | 0e 开头 MD5 值大全、数组绕过、extract() 覆写 |
| ⭐ MD5 弱比较碰撞（`md5(a)==md5(b)` 弱比较） | `php-bypass-cheatsheet.md` | ⚠️ 0e 后必须纯数字！直接用 `QNKCDZO`+`240610708` 等已验证值 |
| ⭐ preg_replace/str_replace 双写绕过 | 见下方「双写绕过速查」 | `NSSNSSCTFCTF` → 替换后 = `NSSCTF` |
| 命令注入空格绕过 | `command-injection-bypass.md` | ${IFS}/$IFS$9/</%09/%0a 全表 |
| eval/RCE 技巧 | `eval-and-rce-techniques.md` | system/exec/passthru 区别、highlight_file 输出顺序、无回显外带 |
| SSTI 注入链 | `ssti-injection-chains.md` | Jinja2/Twig/ERB/Mako 等注入链速查 |
| 反序列化利用链 | `deserialization-playbook.md` | PHP/Java/Python 反序列化、SoapClient CRLF |
| 文件上传 → RCE | `web-security-advanced` → `web-playbook-08-file-vulnerabilities.md` | .htaccess 绕过、日志投毒、多语言 Webshell |
| CTF 快速参考 | `web-ctf-quick-reference.md` | flag 位置、常见链形状、响应头 hint |
| PHP 代码审计 | `php-code-audit-checklist.md` | 输入入口→过滤→危险函数→输出分析 |

## ⭐ PHP 伪协议速查（文件包含/参数传文件名时优先尝试）

**触发条件**：当题目出现以下任一特征时，**先试 php://filter 再想其他方法**：

The rest: https://github.com/Netw0rkNoob/VulnClaw/blob/HEAD/vulnclaw/skills/specialized/ctf-web/SKILL.md
