skills/ctf/ctf-web-methodology/SKILL.md
CTF Web 挑战的总体方法论。当面对 CTF 靶场、xbow benchmark、Web 安全挑战赛时使用。包含挑战类型快速识别、攻击策略选择决策树、常见出题模式、何时切换方向的判断标准。与 exploit/ 下的具体漏洞技能配合使用
npx skillsauth add wgpsec/AboutSecurity ctf-web-methodologyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
以下参考资料按需加载,根据 Phase 2 识别出的挑战类型选择对应文件:
CTF Web 挑战和真实渗透测试有本质区别:目标明确(拿 flag)、漏洞是故意设置的、通常只有一个入口点。本方法论帮助你快速识别挑战类型并选择最短路径。
CTF 的本质是解谜。出题者故意留了一条攻击路径,你的任务是找到它。
关键原则:
按优先级执行(不是全部都做,有发现就停下来分析):
访问首页 — http_request GET 首页,观察:
查看源码 — 检查 HTML 源码(不是渲染后的页面):
<!-- hint: ... --><input type="hidden">路径探测 — 检查常见路径:
/robots.txt — 经常藏着禁止访问的敏感路径/flag, /flag.txt, /flag.php/.git/, /.svn/ — 源码泄露/backup.sql, /www.zip, /源码.tar.gz/admin, /login, /api指纹识别 — httpx -tech-detect 或 curl -sI 识别技术栈
根据侦察结果,快速归类:
| 看到什么 | 可能是什么 | 下一步 |
|----------|------------|--------|
| 搜索框/查询参数 | SQL 注入 | 读 sql-injection-methodology |
| 登录页面 | 弱密码/SQL注入/JWT | 先按 CSRF 安全登录流程,再试 SQLi |
| 文件上传功能 | 文件上传漏洞 | 读 file-upload-methodology |
| 模板渲染/用户输入回显 | SSTI/XSS | 试 {{7*7}} 和 ${7*7} |
| URL 中有文件路径参数 | LFI/目录穿越 | 试 ../../etc/passwd |
| 反序列化数据(base64 cookie) | 反序列化 RCE | 读 deserialization-methodology |
| API 端点 + JSON | IDOR/权限绕过 | 读 idor-methodology |
| JWT token(eyJ...) | JWT 攻击 | 读 jwt-attack-methodology |
| 源码可见(.git 泄露等) | 源码审计 | 读 ctf-source-audit |
| ping/curl 功能 | 命令注入 | 读 command-injection-methodology |
| XML 输入/SOAP | XXE | 读 xxe-injection-methodology |
| URL/文件路径参数 | SSRF | 读 ssrf-methodology |
很多 Web 应用(DVWA、WordPress 等)的登录表单带有 CSRF token(user_token、csrf_token、_token 等隐藏字段)。如果不在同一个 session 内先 GET 获取 token 再 POST 提交,即使密码正确也会登录失败。
举例
1. GET /login.php ← 获取页面,自动保存 session cookie
2. 从响应 HTML 提取 user_token 值
3. POST /login.php ← 自动携带同一 session cookie
body: username=admin&password=password&Login=Login&user_token=<提取的值>
4. 验证:响应不再是登录页面(body 大小变化、出现 Welcome/Dashboard)
user_token、csrf_token、_token、csrfmiddlewaretoken<meta name="csrf-token" content="...">,不一定在 form 里Welcome、Dashboard、Logout 等关键词Login 表单interactive_session 工具而非 bash+ncflag{test} 不是真 flag;多层漏洞 — LFI 拿源码再挖第二个洞/*!select*/;编码 — URL/双重/Unicodetesting
Azure 云环境渗透测试总体方法论。当目标使用 Azure/Microsoft 365/Entra ID、发现 Azure 相关资产(Blob Storage/App Service/Azure VM/Azure Functions)、获取 Azure 凭据(Service Principal/Managed Identity/Access Token)、或需要对 Azure 环境进行安全评估时使用。提供从未授权枚举到 Entra ID 攻击、服务提权、Cloud-to-OnPrem 横向移动的全流程决策树。覆盖 35+ Azure 服务攻击面
tools
Mythic C2 操作方法论。当需要部署 Mythic、选择 Mythic Agent、安装 C2 Profile、配置 HTTP/DNS/WebSocket/SMB/TCP 通信、生成 payload、管理回连任务,或把 Mythic 作为跨平台 C2 框架用于授权红队演练时使用。覆盖 mythic-cli 安装、Agent/Profile 选择、SSL 证书配置、payload 构建和基础 OPSEC 判断
development
Docker 安全测试与容器渗透方法论。当需要评估 Docker 容器、Docker Daemon、Docker Registry、镜像层、构建产物或容器逃逸风险时使用。覆盖容器环境识别、特权容器逃逸、docker.sock/Remote API 利用、procfs/cgroup/capabilities 滥用、Docker 用户组提权、运行时/内核 CVE、Registry 枚举、镜像层 Secret 分析和构建上下文泄露。发现 Docker 容器环境、Registry 暴露、镜像凭据或容器配置错误时应使用此技能
development
使用 PadBuster 进行 Padding Oracle 攻击。当发现 Web 应用使用 CBC 模式加密且存在 Padding Oracle 漏洞时使用。PadBuster 可自动解密密文和伪造任意明文对应的合法密文,适用于加密 Cookie/Token/URL 参数。任何涉及 Padding Oracle 攻击、CBC 密文解密、Cookie 伪造的场景都应使用此技能