Agent Skills › Unclecheng-li/VulnClaw

Unclecheng-li/VulnClaw

GitHub

针对AI、Agent、MCP等组件的安全评估Skill,覆盖Prompt注入、工具滥用、权限逃逸、数据泄露及模型风险。通过场景路由指引测试流程,提供应用层至部署层的全面攻击面分析。

16 skills 2,015

Install All Skills

npx skills add Unclecheng-li/VulnClaw --all -g -y
More Options

List skills in collection

npx skills add Unclecheng-li/VulnClaw --list

Skills in Collection (16)

针对AI、Agent、MCP等组件的安全评估Skill,覆盖Prompt注入、工具滥用、权限逃逸、数据泄露及模型风险。通过场景路由指引测试流程,提供应用层至部署层的全面攻击面分析。
目标包含LLM、Agent或MCP工具 涉及Skills、RAG、Memory或Plugin安全评估 需要评估模型服务组件的安全性
vulnclaw/skills/specialized/ai-mcp-security/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill ai-mcp-security -g -y
SKILL.md
Frontmatter
{
    "name": "ai-mcp-security",
    "routing": {
        "task_types": [
            "pentest",
            "audit"
        ],
        "target_types": [
            "ai_agent",
            "mcp"
        ],
        "technologies": [
            "llm",
            "rag",
            "memory",
            "plugin"
        ],
        "vulnerability_classes": [
            "prompt_injection",
            "tool_abuse",
            "info_disclosure"
        ]
    },
    "description": "AI与MCP安全评估 — Prompt注入、工具滥用、MCP信任边界、Agent权限逃逸、数据泄露、模型风险、GAARM风险矩阵"
}

AI 与 MCP 安全评估 Skill

当目标包含 LLM、Agent、MCP 工具、Skills、RAG、Memory、Plugin 或模型服务组件时使用本 Skill。

前置条件:如果 AI 表面只是展示层,真正的阻塞仍是客户端签名或加密协议,先回到 client-reverse Skill。

场景路由

风险类型 首选参考
Prompt 注入 / 间接注入 / CoT 干扰 references/ai-app-security.md
工具滥用 / MCP 投毒 / Skills 供应链 references/04-ai-and-mcp-security-integrated.md MCP 章节
权限逃逸 / 角色越界 / 凭据滥用 references/ai-identity-security.md
数据泄露 / Prompt 泄漏 / 模型逆推 references/ai-data-security.md
容器逃逸 / CI-CD / 沙箱失败 references/ai-baseline-security.md
模型风险 / 对抗样本 / 后门 references/ai-model-security.md
影响分类与覆盖评估 references/gaarm-risk-matrix.md

测试流程

1. 应用层攻击

  • 直接 Prompt 注入
  • 间接注入(通过外部数据源)
  • CoT 干扰与指令覆盖
  • Agent 滥用(未授权操作)
  • 代码执行突破
  • Memory 投毒

2. MCP 与 Agent 风险

  • 工具描述投毒
  • 指令覆盖
  • 隐藏指令注入
  • 未授权资源访问
  • Skills/Rules 供应链问题

3. 身份与授权

  • 动作滥用
  • 角色逃逸
  • 权限漂移
  • 云凭据滥用

4. 数据与隐私

  • Prompt 泄漏
  • 敏感数据暴露
  • 训练数据问题
  • 模型逆推
  • API 数据窃取

5. 基线与部署

  • CI/CD 缺陷
  • 容器逃逸
  • 向量数据库安全
  • 沙箱失效
  • 环境隔离缺陷
  • 模型服务缺陷

参考文档

  • references/04-ai-and-mcp-security-integrated.md — AI 与 MCP 安全整合参考
  • references/ai-app-security.md — AI 应用安全
  • references/ai-identity-security.md — AI 身份安全
  • references/ai-data-security.md — AI 数据安全
  • references/ai-baseline-security.md — AI 基线安全
  • references/ai-model-security.md — AI 模型安全
  • references/gaarm-risk-matrix.md — GAARM 风险矩阵
用于处理客户端逆向与Burp重放。涵盖安卓App、浏览器JS及桌面客户端场景,通过Packet-First原则捕获流量,定位签名加密逻辑,解决反自动化阻塞,实现稳定请求重放与安全测试。
客户端请求包含签名或加密导致无法直接重放 需要进行安卓App渗透测试且抓包受阻 需要分析浏览器JS签名或反爬逻辑 需要逆向桌面客户端本地签名函数
vulnclaw/skills/specialized/client-reverse/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill client-reverse -g -y
SKILL.md
Frontmatter
{
    "name": "client-reverse",
    "routing": {
        "tooling": [
            "frida",
            "jadx",
            "burp",
            "scrcpy"
        ],
        "task_types": [
            "reverse"
        ],
        "target_types": [
            "client",
            "android",
            "mobile"
        ]
    },
    "description": "客户端逆向与Burp重放 — 复杂客户端签名恢复、加密还原、请求链追踪、稳定重放,适用于已授权安卓App渗透测试、浏览器JS签名、桌面客户端逆向"
}

客户端逆向与 Burp 重放 Skill

当请求由客户端(安卓App、浏览器JS、桌面客户端)构造,且存在签名、加密、token状态、设备绑定或反自动化逻辑导致 Burp 无法直接重放时,使用本 Skill。

核心原则

Packet-First:先捕获并分析真实的 HTTP/HTTPS 请求或 WebSocket 流量,确认可用性,再按需逆向阻塞点。逆向是阻塞解决步骤,不是默认入口。

场景路由

已授权安卓 App 渗透测试

不要先用 jadx、ida_pro_mcp 分析 APK,按以下顺序操作:

  1. 确认目标 App 已安装在连接设备上
  2. 准备好 Burp 或 Charles 抓包
  3. 用 scrcpy_vision 打开 App,驱动真实业务流程
  4. 每个关键动作后检查 Burp/Charles 是否出现 HTTP/HTTPS 或 WebSocket 数据包
  5. 如果包可见且可重放 → 立即进入 web-security-advanced 做 Web/API 安全测试
  6. 重复"界面动作 → 抓包 → Web 安全分析"循环
  7. 只有抓不到包/包被加密/无法重放时 → 升级到 jadx → frida_mcp → ida_pro_mcp

MCP 工具链:scrcpy_vision → burp/charles → adb_mcp → jadx → frida_mcp → ida_pro_mcp

浏览器 JS 签名、反爬、WebSocket 握手

  1. chrome_devtools 查看页面状态和请求链
  2. js_reverse 定位 token/sign 生成逻辑
  3. burp 验证重放并确定可变字段

阶段模型:locate → recover → runtime → validation → replay

MCP 工具链:chrome_devtools → js_reverse → burp

桌面客户端 / 本地 signer

  1. everything_search 定位相关文件
  2. ida_pro_mcp 静态分析签名函数
  3. frida_mcp 获取运行时参数
  4. burp 验证稳定重放

MCP 工具链:everything_search → ida_pro_mcp → frida_mcp → burp

重放就绪检查清单

在进入 Payload 测试前,必须能回答:

  • 请求体如何构造?
  • 签名/加密输入来自哪里?
  • 哪些 cookie、header、token、设备值、时间戳、nonce 是必须的?
  • 请求是否依赖顺序或会话状态?
  • 哪些字段改动后不会破坏重放?

证据保留

  • builder/signer/crypto 代码位置
  • 关键 hook 点和运行时观察值
  • 可用的 replay 请求样本
  • 前置条件、失败模式和反自动化行为说明

参考文档

  • references/02-client-api-reverse-and-burp.md — 客户端逆向到 Burp 重放总工作流
  • references/android-authorized-app-pentest-sop.md — 安卓 App 渗透 SOP
  • references/browser-js-signing-workflow.md — 浏览器 JS 签名工作流
  • references/android-signing-and-crypto-workflow.md — 安卓签名与加密工作流
  • references/android-ui-driven-observation-and-packet-loop.md — 安卓 UI 驱动观察循环
  • references/android-external-url-runtime-first-workflow.md — 安卓外部 URL 测试
  • references/android-network-layer-testing-quick-reference.md — 安卓网络层测试速查
  • references/MCP.md — MCP 能力总文档
  • references/tool-selection-map.md — 工具选型地图
面向渗透测试与CTF的编解码及加解密工具Skill。支持Base64/Hex/JWT等编码识别与链式解码,MD5/SHA哈希处理,AES/RSA等对称非对称加密,以及古典密码破解。核心原则为优先调用crypto_decode工具自动或手动解码,确保结果合理性。
遇到Base64、Hex、URL编码等字符串需要解码 需要计算MD5、SHA等哈希值 进行AES、RSA等加解密操作 解析JWT Token 破解ROT13、Caesar等古典密码
vulnclaw/skills/specialized/crypto-toolkit/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill crypto-toolkit -g -y
SKILL.md
Frontmatter
{
    "name": "crypto-toolkit",
    "description": "编码解码与加解密工具 — base64\/URL\/Hex\/HTML实体编码解码,MD5\/SHA哈希,AES\/DES\/RSA加解密,JWT解析,Caesar\/ROT13密码,栅栏\/Vigenere密码,Unicode转义,Morse电码等"
}

编码解码与加解密 Skill

针对渗透测试中常见的编码、加密、混淆场景,提供全面的编解码和加解密能力。 重要:遇到任何编码/加密字符串时,优先使用 crypto_decode 工具进行解码,而非靠直觉猜测。

核心原则

  1. 工具优先 — 遇到 base64、hex、URL编码等字符串,调用 crypto_decode 工具解码,不要自行脑补
  2. 多格式尝试 — 如果一种解码方式结果不合理,尝试其他编码格式
  3. 链式解码 — CTF 中常见多层编码(如 base64→hex→ROT13),解码后检查结果是否还需再次解码
  4. 验证结果 — 解码后验证结果的合理性(是否为可读文本、是否像路径/URL/flag 等)

1. 编码识别与解码

常见编码特征识别

编码类型 特征 示例
Base64 A-Za-z0-9+/= 结尾常有 = 填充 TnNTY1RmLnBocA==
Base32 A-Z2-7= OBZHK5DFN2A====
Hex 0-9a-f 偶数长度 4e73536354662e706870
URL编码 %XX 格式 %2F%61%64%6D%69%6E
HTML实体 &#xNN;&#NNN; <script>
Unicode转义 \uXXXX\UXXXXXXXX \u003c\u0073\u0063
JWT 三段 . 分隔的 base64 eyJhbG...

解码策略

  1. 识别编码类型 → 调用 crypto_decode 工具指定对应操作
  2. 检查解码结果是否可读/合理
  3. 不合理则尝试其他编码格式
  4. 如果结果仍像编码,重复步骤 1-3

2. 哈希与散列

常见哈希类型

类型 输出长度 特征
MD5 32 hex e10adc3949ba59abbe56e057f20f883e
SHA1 40 hex aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
SHA256 64 hex 2c26b46b68ffc68ff99b453c1d30413413422d7064...
SHA512 128 hex 更长的hex字符串
NTLM 32 hex Windows hash
MySQL5 41字符 *E6CC90B878B948C35E92B003C792C46758BF4

哈希处理策略

  • 识别哈希类型(通过长度和字符集)
  • 尝试在线彩虹表查询(通过 fetch 工具访问 crackstation 等)
  • 对于已知盐值的哈希,尝试带盐值暴力破解

3. 对称加密

AES/DES/3DES

  • 需要密钥和模式(ECB/CBC/CTR 等)
  • CBC 模式需要 IV
  • 常见填充:PKCS7/ZeroPadding
  • 渗透中常遇到硬编码密钥,优先从源码中提取

4. 非对称加密

RSA

  • 从公钥/私钥文件中提取参数
  • 模数过小的 RSA 可分解
  • 已知私钥可直接解密

5. 古典密码

类型 特征 破解方法
Caesar/ROT13 字母位移 暴力25种位移
Vigenere 多表替换 Kasiski/频率分析
栅栏密码 字符分组重组 尝试常见栏数
培根密码 AB 五元组 查表
Morse .- 点划 查表

6. JWT 处理

  • 解码 Header + Payload(base64url)
  • 检查算法:none 算法绕过、RS256→HS256 算法混淆
  • 尝试弱密钥签名伪造
  • 检查 exp/nbf 等时间声明

工具使用

crypto_decode 工具

当遇到需要编码/解码/加密/解密的操作时,调用此工具:

crypto_decode(operation="base64_decode", input="TnNTY1RmLnBocA==")

支持的操作列表:

  • 编码: base64_encode, base32_encode, hex_encode, url_encode, html_encode, unicode_encode, rot13_encode, morse_encode, caesar_encode, base58_encode
  • 解码: base64_decode, base32_decode, hex_decode, url_decode, html_decode, unicode_decode, rot13_decode, morse_decode, caesar_decode, base58_decode
  • 哈希: md5_hash, sha1_hash, sha256_hash, sha512_hash
  • 加密/解密: aes_encrypt, aes_decrypt, des_encrypt, des_decrypt, rsa_encrypt, rsa_decrypt
  • JWT: jwt_decode, jwt_encode
  • 自动识别: auto_decode (自动识别编码类型并解码)

CTF 密码学攻击路由

当遇到密码学攻击场景(已知加密算法,需要恢复明文或密钥)时,优先使用 ctf-crypto Skill:

攻击场景 路由到 ctf-crypto 参考文档
RSA 小指数/共模/Wiener ctf-crypto references/rsa-attacks-cheatsheet.md
AES Padding Oracle/ECB 翻转 ctf-crypto references/aes-and-block-cipher-attacks.md
ECC 小子群/离散对数 ctf-crypto references/ecc-attacks-cheatsheet.md
PRNG/MT19937 预测 ctf-crypto references/prng-and-stream-cipher-attacks.md
古典密码(Vigenere/XOR) ctf-crypto references/classic-cipher-attacks.md
格攻击/LWE ctf-crypto references/lattice-and-lwe-attacks.md

本 Skill 侧重编解码操作工具,密码学具体攻击方法和参数请参考 ctf-crypto

参考文档

  • references/encoding-cheatsheet.md — 编码识别速查表
  • references/crypto-attacks.md — 密码学攻击手法
  • references/crypto-attacks-roadmap.md — 密码学攻击分类路由(根据题目特征选择攻击方法)
CTF密码学实战攻击知识库,涵盖RSA、AES、ECC、PRNG及格攻击等。提供具体参数、公式与Python代码,辅助识别加密体系并执行针对性攻击,区别于基础编解码工具。
CTF密码学题目解题 需要特定密码学攻击方法(如RSA小指数、Padding Oracle) 分析加密算法弱点
vulnclaw/skills/specialized/ctf-crypto/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill ctf-crypto -g -y
SKILL.md
Frontmatter
{
    "name": "ctf-crypto",
    "routing": {
        "task_types": [
            "ctf",
            "crypto"
        ],
        "target_types": [
            "ctf",
            "crypto"
        ]
    },
    "description": "CTF密码学攻击知识库 — RSA攻击(小指数\/共模\/Wiener\/Coppersmith)、AES攻击(Padding Oracle\/ECB字节翻转\/GCM nonce重用)、ECC攻击、LFSR\/LCG\/PRNG攻击、古典密码、LWE格攻击"
}

CTF 密码学攻击知识库

针对 CTF Crypto 题目的实战攻击知识库,提供具体攻击参数、数学公式、Python 代码片段

crypto-toolkit 的区别

  • crypto-toolkit → 编解码操作工具(base64 解码、MD5 哈希、AES 加解密)
  • ctf-crypto → 密码学攻击知识(RSA 小指数攻击怎么做、Padding Oracle 怎么利用)

核心原则

  1. 先识别加密体系 — 看密钥长度、加密模式、已知量,确定攻击方向
  2. 工具验证 — 使用 python_execute 执行攻击代码,用 crypto_decode 做辅助编解码
  3. 参数敏感 — 密码学攻击对参数极其敏感,必须精确计算

场景路由

场景 参考文档 核心攻击
RSA 攻击 rsa-attacks-cheatsheet.md 小e/共模/Wiener/Pollard/Fermat/Coppersmith
AES/分组密码攻击 aes-and-block-cipher-attacks.md ECB翻转/Padding Oracle/GCM nonce重用
ECC 攻击 ecc-attacks-cheatsheet.md 小子群/invalid curve/Smart/Pohlig-Hellman
PRNG/流密码攻击 prng-and-stream-cipher-attacks.md MT19937/LCG/LFSR/RC4
古典密码 classic-cipher-attacks.md Vigenere/XOR频率分析/OTP重用
格攻击 lattice-and-lwe-attacks.md LLL/BKZ/HNP/LWE embedding

快速判题指南

题目特征 可能攻击 推荐参考
给了 n, e, c RSA rsa-attacks-cheatsheet.md
e=3 或 e 很小 RSA 小指数攻击 rsa-attacks-cheatsheet.md
多组 (n, e, c) 且 n 相同 RSA 共模攻击 rsa-attacks-cheatsheet.md
n 很大但 e 很大 Wiener 攻击 rsa-attacks-cheatsheet.md
AES-CBC + 解密 oracle Padding Oracle aes-and-block-cipher-attacks.md
AES-ECB + 可控明文 ECB 字节翻转 aes-and-block-cipher-attacks.md
椭圆曲线参数 ECC 攻击 ecc-attacks-cheatsheet.md
给了随机数序列 PRNG 预测 prng-and-stream-cipher-attacks.md
给了密文和部分明文 XOR/流密码 classic-cipher-attacks.md
矩阵/向量运算 格攻击 lattice-and-lwe-attacks.md
CTF杂项实战知识库,覆盖沙箱逃逸、编码链识别、隐写术及VM逆向等题型。提供场景路由与快速判题指南,辅助解决Python/Bash Jail、多层编码、二维码/音频隐写、游戏二进制逆向、CTFd平台操作及Linux提权问题。
CTF Misc题目求解 沙箱逃逸技巧查询 多层编码解码分析 隐写术技术求助 CTFd平台API使用
vulnclaw/skills/specialized/ctf-misc/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill ctf-misc -g -y
SKILL.md
Frontmatter
{
    "name": "ctf-misc",
    "description": "CTF杂项知识库 — Python Jail逃逸、Bash Jail逃逸、编码链识别与解码、QR\/音频\/图像隐写、游戏VM逆向、CTFd API导航、Linux提权"
}

CTF 杂项知识库

针对 CTF Misc 题目的实战知识库,覆盖沙箱逃逸、编码链识别、隐写术、游戏逆向等杂项题型。

场景路由

场景 参考文档 核心内容
Python 沙箱逃逸 python-jail-escape.md __import__/func_globals/eval链
Bash 沙箱逃逸 bash-jail-escape.md HISTFILE/ctypes.sh/vi编辑器逃逸
编码链识别与解码 encoding-chain-reference.md Base64→Hex→ROT13 多层嵌套
游戏/自定义 VM 逆向 game-and-vm-reverse.md WASM/Brainfuck/Z3 约束求解
CTFd 平台操作 ctfd-platform-guide.md API 下载附件/提交 flag
Linux 提权 linux-privesc-quick.md SUID/sudo/cron/内核漏洞

快速判题

题目特征 可能考点 推荐参考
Python exec/eval 输入框 PyJail 逃逸 python-jail-escape.md
命令行 restricted bash BashJail 逃逸 bash-jail-escape.md
奇怪编码字符串 编码链解码 encoding-chain-reference.md
二维码/音频文件 隐写术 encoding-chain-reference.md
游戏二进制/WASM 自定义 VM 逆向 game-and-vm-reverse.md
CTFtime / CTFd 平台 平台 API ctfd-platform-guide.md
给了一个 shell Linux 提权 linux-privesc-quick.md
CTF Web实战知识库,提供PHP弱比较、命令注入绕过、SSTI、反序列化等具体Payload与审计Checklist。强调精确值验证与工具实测,区别于渗透测试方法论。
CTF Web题目解题 PHP伪协议文件包含利用 代码审计与漏洞挖掘 特定绕过技巧查询
vulnclaw/skills/specialized/ctf-web/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill ctf-web -g -y
SKILL.md
Frontmatter
{
    "name": "ctf-web",
    "routing": {
        "task_types": [
            "ctf"
        ],
        "target_types": [
            "ctf",
            "web"
        ],
        "technologies": [
            "php"
        ],
        "vulnerability_classes": [
            "rce",
            "ssti",
            "deserialization",
            "type_juggling",
            "path_traversal"
        ]
    },
    "description": "CTF Web攻击知识库 — PHP弱比较绕过、命令注入空格绕过、eval回显技巧、SSTI注入链、反序列化利用链、PHP代码审计checklist、常见flag位置"
}

CTF Web 攻击知识库

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

web-security-advanced 的区别

  • web-security-advanced → 渗透测试方法论(怎么系统性测试一个 Web 应用)
  • ctf-web → CTF 实战知识库(PHP 弱比较用什么值、空格怎么绕过、eval 输出怎么回显)

核心原则

  1. 精确值优于方法论 — 提供可直接使用的绕过值和 payload,而非"可以尝试"的建议
  2. 工具验证 — 所有 payload 必须用 fetchpython_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-advancedweb-playbook-08-file-vulnerabilities.md .htaccess 绕过、日志投毒、多语言 Webshell
CTF 快速参考 web-ctf-quick-reference.md flag 位置、常见链形状、响应头 hint
PHP 代码审计 php-code-audit-checklist.md 输入入口→过滤→危险函数→输出分析

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

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

触发特征 示例
参数接受文件名/路径 ?file=xxx / ?page=xxx / ?num=xxx / ?path=xxx
include / require / include_once 源码中有这些函数
页面展示源码 highlight_file() / show_source()
题目要求"读文件"或"找 flag" 明确要读取服务器文件

伪协议 Payload 速查

# 1. 读 PHP 源码(base64 编码,避免 PHP 执行)
?file=php://filter/read=convert.base64-encode/resource=flag.php
?file=php://filter/read=convert.base64-encode/resource=index.php

# 2. 读 PHP 源码(rot13 编码)
?file=php://filter/read=string.rot13/resource=flag.php

# 3. 直接读文件(如 .txt/.log 等非 PHP 文件)
?file=php://filter/resource=/etc/passwd

# 4. 代码执行
?file=php://input  (POST body 中放 PHP 代码)
?file=data://text/plain;base64,PD9waHAgc3lzdGVtKCdjYXQgL2ZsYWcnKTs/Pg==

⚠️ 关键提醒

  1. 不要只想着"绕过",先想能不能"直接读" — 很多题目的参数接受文件名,可以直接用伪协议读 flag.php,根本不需要绕过任何过滤
  2. convert.base64-encode 是万能读取器 — PHP 文件被 include 会执行,但 base64 编码后不会执行,可以拿到源码
  3. 参数名不一定叫 file — 可能是 pagenumpathtemplate 等,只要参数值被当作文件路径/名处理就可能有效
  4. 拿到 base64 后用 crypto_decode 工具解码 — 不要自己脑补解码结果

常见 flag 位置速查

⚠️ RCE 得手后,必须按以下优先级测试 flag 位置,不要停留在当前目录的 flag.php:

优先级 1(最常见): cat /flag
优先级 2:           cat /flag.txt
优先级 3:           ls /  → 找到根目录的 flag 文件名
优先级 4:           cat /var/www/html/flag.php
优先级 5:           cat /home/ctf/flag
优先级 6:           cat /root/flag
其他位置:           /environment, /proc/self/environ, env 命令

注意ls 默认列当前目录(/var/www/html/),根目录的 /flag 需要 ls / 才能看到。

常见 CTF Web 题型速判

题目特征 可能考点 推荐参考
参数接受文件名/路径 先试 php://filter 读 flag 见上方「PHP 伪协议速查」
页面只有登录框 SQL 注入 / 弱口令 / 条件竞争 php-bypass-cheatsheet.md
页面有代码展示 代码审计 php-code-audit-checklist.md
eval/system 字样 RCE + 空格/关键字绕过 eval-and-rce-techniques.md + command-injection-bypass.md
eval + 长度限制 RCE + $_GET 链式传参绕长度 见下方「RCE + 长度限制绕过」
文件上传功能 后缀绕过 / MIME 绕过 web-security-advancedweb-playbook-08-file-vulnerabilities.md
页面模板渲染 SSTI ssti-injection-chains.md
序列化/反序列化 PHP/Java 反序列化 deserialization-playbook.md
有 WAF/过滤提示 正则绕过 / 编码绕过 php-bypass-cheatsheet.md + command-injection-bypass.md

RCE + 长度限制绕过(首推策略)

eval()strlen() 长度限制时(如 ≤ 18 字符),首推 $_GET 链式传参

标准解法

?get=eval($_GET['A']);&A=system('cat /flag');

原理

  • eval($_GET['A']) = 16 字符,通过长度限制
  • 真正的命令在第二个 GET 参数 A 中,没有长度限制
  • PHP 会先执行 eval(),将 $_GET['A'] 的值作为 PHP 代码执行

变体

长度限制 payload 字符数
≤ 18 eval($_GET['A']); 16
≤ 18 eval($_GET[0]); 14
≤ 16 eval($_GET[A]); 13(无引号,PHP 自动转字符串)
≤ 12 $_GET[0](); 10(A 参数传函数名如 system,另一个参数传命令)

注意事项

  • 不要花时间在缩短 payload 上(如用 ?> 退出 PHP 模式、用反引号等),链式传参是通用解法
  • 双 GET 参数 URL 格式:?get=eval($_GET['A']);&A=system('cat /flag');
  • python_execute 工具构造请求,而非 fetch 工具(fetch 可能不支持多参数)

⭐ preg_replace / str_replace 双写绕过速查

触发条件:源码含 preg_replace('/X/', '', $str)str_replace('X', '', $str),且替换后需 $str === "X"

核心原理

在关键词中间嵌入完整关键词,替换删除内层后,外层拼合出原词。

通用构造公式

输入 = 关键词前半 + 关键词 + 关键词后半

常见过滤词速查表

过滤关键词 双写输入 替换过程 结果
NSSCTF NSSNSSCTFCTF 删中间NSSCTF → NSS+CTF NSSCTF
flag flflagag 删中间flag → fl+ag flag
cat cacatt 删中间cat → ca+t cat
system syssystemtem 删中间system → sys+tem system
hack hahackck 删中间hack → ha+ck hack
cmd cmcmdd 删中间cmd → cm+d cmd
exec exexecec 删中间exec → ex+ec exec

⚠️ 关键注意事项

  1. 大小写绕过不适用 — 替换后返回 NssCTF,不等于 "NSSCTF",严格比较失败
  2. 识别信号 — 看到 preg_replace('/X/', '', $str) + $str === "X" → 立即双写
  3. str_replace 同理str_replace 也是一次替换,双写同样有效
  4. 多次替换 — 如果代码多次调用 preg_replace,可能需要三写/四写,但 CTF 中通常只需双写
根据侦察获取的服务版本信息,调用cve_lookup工具查询并筛选已知CVE。通过CVSS评分、可利用性及目标暴露面进行优先级排序,验证版本适用性后记录发现,辅助漏洞验证决策。
从服务Banner或Header中识别出产品名称和版本号 需要评估已发现软件版本的潜在安全风险
vulnclaw/skills/specialized/cve-triage/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill cve-triage -g -y
SKILL.md
Frontmatter
{
    "name": "cve-triage",
    "routing": {
        "phases": [
            "vuln_discovery"
        ],
        "task_types": [
            "triage"
        ]
    },
    "description": "CVE lookup and triage — map discovered services\/versions to known CVEs via the cve_lookup tool, score by CVSS\/exploitability, and prioritize what to verify first."
}

CVE Triage

Turn version/banner evidence from recon into a prioritized, exploitability-aware list of CVEs worth verifying. Use this after fingerprinting a service, when a banner or Server: header reveals a product and version, or whenever the target exposes software with a known version.

The cve_lookup tool

VulnClaw ships a read-only cve_lookup tool backed by NVD:

  • Keyword searchcve_lookup(query="Apache httpd 2.4.49", limit=5) returns the top CVEs sorted by CVSS, highest first.
  • CVE-ID detailcve_lookup(query="CVE-2021-44228") returns the full record plus best-effort exploit / PoC repositories discovered on GitHub.

It performs no egress to the target and is safe during recon. Without an NVD_API_KEY it still works (lower rate limit); set one for heavier use.

Workflow

  1. Extract product + version from recon — service banners, Server headers, JS bundles, login footers, package manifests. A precise version string (OpenSSH 8.2p1, nginx 1.18.0) yields far better matches than a bare name.
  2. Query cve_lookup with "<product> <version>". Pull the detail record for any high/critical hit by re-querying its CVE-ID.
  3. Score & prioritize — see references/cve-triage-workflow.md. Rank by CVSS, then by exploit availability, then by exposure (is the vulnerable surface actually reachable on this target?).
  4. Confirm version applicability — match the target's version against the CVE's affected cpe range before claiming it. Banner ≠ proof of vulnerability.
  5. Record findings with the CVE-ID, CVSS, and the evidence that maps this target to it. Mark unconfirmed version-only matches as needs-manual-review, not verified.

Pitfalls

  • A keyword match is a hypothesis, not a finding — version ranges and backported patches mean a banner version can be patched in place.
  • GitHub "PoC" repos are unverified third-party code; treat as leads, never run blindly against a target.
  • Prefer the CVSS base score for triage, but let exploit availability and real exposure override raw score when prioritizing verification effort.
HackerOne赏金项目范围守卫技能。解析并强制Program Scope与规则,将In-scope资产逐一委派给pentest-flow执行渗透测试,严禁触碰Out-of-scope资产及违反安全红线。
用户请求对HackerOne赏金项目进行渗透测试准备 用户提供HackerOne Program链接或Scope数据需要解析
vulnclaw/skills/specialized/hackerone/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill hackerone -g -y
SKILL.md
Frontmatter
{
    "name": "hackerone",
    "description": "HackerOne 赏金项目 scope-guard 流程 — 读取 program scope,强制 scope 与 program rules,再逐个把 in-scope asset 交给 pentest-flow",
    "requires_target": false
}

HackerOne 赏金 scope-guard Skill

你当前正在执行 HackerOne bug bounty 流程。本 Skill 是一层 scope-guard wrapper: 先解析并强制 program scope 与 program rules,再把每个 in-scope asset 交给 pentest-flow Skill 执行真正的渗透。严禁在任何阶段触碰 out-of-scope asset。

启动参数是一个 HackerOne program 链接(<SCOPE LINK>),例如 hackerone.com/<handle>.../policy_scopes。本 Skill 无预设 target (frontmatter requires_target: false)——target 从 scope 中发现。

阶段一:读取 scope(Read scope)

  1. 优先 fetch 链接

    • 用 fetch 工具访问传入的 <SCOPE LINK>
    • HackerOne 是 JavaScript SPA:hackerone.com/* 的 fetch 通常只返回 空 app shell,没有渲染出的 scope 行(scope 数据来自 hackerone.com/graphql 或 authenticated api.hackerone.com,naive fetch 拿不到)。
    • 检测空壳:若响应中没有可识别的 scope 表格 / asset 列表(只有 <div id="app"> 之类的骨架),判定为 fetch 失败。
  2. fallback:请用户粘贴 scope

    • fetch 为空 / 被 login-wall / 仅 JS 渲染时,这是常态而非例外

    • 请用户从 program 页面的 Scope 标签把 in-scope 与 out-of-scope 两张表 直接粘贴过来。给出一个可参照的粘贴格式示例:

      In scope:
      https://api.example.com        | URL       | Eligible for bounty
      *.example.com                  | WILDCARD  | Eligible for bounty
      app.example.com                | URL       | In scope, NOT bounty-eligible
      com.example.android            | GOOGLE_PLAY_APP_ID | Eligible for bounty
      
      Out of scope:
      blog.example.com               | URL
      *.corp.example.com             | WILDCARD
      
  3. 宽松解析(lenient parse)

    • 从粘贴或 fetch 结果中提取两个列表:in-scopeout-of-scope
    • 识别 asset type(human label 或 API enum 均可): URLWILDCARD*.x.com)、CIDR/IP、SOURCE_CODEGOOGLE_PLAY_APP_ID/APPLE_STORE_APP_ID/TESTFLIGHT/OTHER_APK/OTHER_IPAHARDWAREAI_MODELSMART_CONTRACTOTHER 等。
    • 识别 eligibility 三态(submission 与 bounty 是两个独立布尔):
      • submission=true, bounty=true → in scope,可测,有赏金。
      • submission=true, bounty=falsein scope,可测,无赏金(勿与 out-of-scope 混淆)。
      • submission=falseout of scope,绝不测试
    • 解析不确定时,向用户确认,绝不把 asset 默认当作 in-scope
  4. 输出

    • in-scope asset 列表(含 type + eligibility)。
    • out-of-scope deny-list(用于全程强制)。

阶段二:强制边界(Enforce boundaries)

在进入任何测试前,明确写下并全程遵守以下 硬性规则

  1. Scope 硬边界

    • 只测试 in-scope 列表中的 asset。
    • out-of-scope deny-list 中的 asset 绝不触碰——不 fetch、不扫描、不发任何 payload。
    • pentest-flow 只能直接作用于 URLWILDCARD 类型;其它类型 (mobile app / source / CIDR / hardware 等)暂不自动化,需先与用户确认处理方式。
  2. Program rules(层叠在 VulnClaw 既有 BLOCKED_PATTERNS / RESERVED_IP_RANGES 之上)

    • no DoS / 无可用性影响:禁止压力测试、资源耗尽、批量并发(自动化扫描器的首要红线)。
    • 尊重 rate limit / automation limit:低速、串行;遵守 program 声明的 "no automated scanning" 条款。
    • no social engineering:不针对人员,不钓鱼。
    • minimal impact / no PII exfil:验证漏洞即止,不导出真实用户数据、不做破坏性操作。
  3. 异常处理

    • 任何一步若可能越过 scope 或触发上述规则,停止并询问用户

阶段三:枚举与确认(Enumerate & confirm)

  1. 向用户列出全部已解析的 in-scope asset(编号、type、eligibility)。
  2. 询问从哪个 asset 开始(或全部)。
  3. 一次只处理一个 asset,逐个确认,避免并发导致越界或触发 rate limit。

阶段四:委派 pentest-flow(Delegate)

对用户选定的 单个 in-scope asset

  1. 将该 asset 作为 target 交给 pentest-flow Skill,执行 recon → vuln-discovery → exploitation 全流程。
  2. 全程保持在 scope 内:pentest-flow 发现的新子域 / 端点若超出 in-scope 定义(尤其不匹配任何 in-scope WILDCARD),排除并提示用户。
  3. 持续对照阶段二的 program rules。

阶段五:报告(Report — HackerOne submission format)

对每个确认的 finding,按 HackerOne 提交格式 输出一份报告:

  1. Title — 简洁描述漏洞(type + 受影响 asset)。
  2. Asset — 受影响的 in-scope asset(URL / 标识)。
  3. Severity (CVSS) — CVSS 向量与分数(Critical/High/Medium/Low)。
  4. Steps to Reproduce — 可复现的分步操作(含请求 / 响应 / payload)。
  5. Impact — 可利用性与业务影响。
  6. Remediation — 修复建议。

多个 finding 时,每个独立成节;附可参数化的 Python PoC(requests 库)。 提醒用户:报告仅供其在 HackerOne 上 人工提交,本 Skill 不自动上报。

参考文档

  • references/hackerone-report-and-scope.md — scope 解析参考(asset type ↔ API enum、 eligibility 三态、粘贴表形状)、program rules 强制清单、HackerOne 提交格式报告模板。
用于内网渗透测试,涵盖横向移动、凭据窃取、提权、持久化及AD/ADCS攻击。需已获初始访问权限,提供场景路由与标准化测试流程,指导从信息收集到隧道代理的完整操作。
内网渗透测试 横向移动 域环境攻击 权限提升 持久化维持
vulnclaw/skills/specialized/intranet-pentest-advanced/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill intranet-pentest-advanced -g -y
SKILL.md
Frontmatter
{
    "name": "intranet-pentest-advanced",
    "routing": {
        "phases": [
            "post_exploitation",
            "exploitation"
        ],
        "tooling": [
            "bloodhound",
            "impacket",
            "crackmapexec",
            "mimikatz",
            "chisel",
            "ligolo",
            "frp"
        ],
        "protocols": [
            "smb",
            "ldap",
            "kerberos",
            "rdp"
        ],
        "task_types": [
            "pentest"
        ],
        "target_types": [
            "intranet",
            "network",
            "host"
        ],
        "vulnerability_classes": [
            "lateral_movement",
            "privilege_escalation",
            "credential_theft"
        ]
    },
    "description": "内网渗透高级 — 横向移动、凭据窃取、提权、持久化、隧道代理、AD攻击、ADCS滥用、Exchange\/SharePoint攻击"
}

内网渗透高级 Skill

当任务从互联网评估转入主机、域或内网操作时使用本 Skill。需要已获得初始访问权限或立足点。

前置条件:如果尚未获得初始访问,先完成外网渗透获取立足点。

场景路由

目标类型 首选参考
横向移动(PsExec/WMI/WinRM/DCOM/SSH/RDP/PTH/PTT) references/intranet-playbook-01-lateral-movement.md
规避与反检测(AMSI绕过/ETW/注入/伪装/签名二进制滥用) references/intranet-playbook-02-evasion-and-anti-detection.md
凭据窃取(Mimikatz/Kerberoasting/DCSync/浏览器Vault) references/intranet-playbook-03-credential-theft.md
提权与持久化(Token/Service/Potato/Cron/Registry/WMI) references/intranet-playbook-04-privilege-escalation.md + 05-persistence.md
隧道与代理(FRP/Chisel/Ligolo/SOCKS/SSH/DNS/ICMP) references/intranet-playbook-06-tunneling-and-proxy.md
信息收集 references/intranet-playbook-07-information-gathering.md
AD 攻击(BloodHound/AS-REP/Kerberoasting/Golden/Silver) references/intranet-playbook-08-active-directory-attacks.md
ADCS 攻击(ESC1-8/Certipy/Certreq) references/intranet-playbook-09-adcs-attacks.md
Exchange 攻击 references/intranet-playbook-10-exchange-attacks.md
SharePoint 攻击 references/intranet-playbook-11-sharepoint-attacks.md

测试流程

1. 信息收集

  • 内网拓扑、网段、主机发现
  • 域信息、信任关系
  • 服务识别与漏洞探测

2. 凭据获取

  • Mimikatz 抓取内存凭据
  • Kerberoating / AS-REP Roasting
  • 浏览器/密码管理器凭据提取
  • DCSync(需域管权限)

3. 横向移动

  • Pass-the-Hash / Pass-the-Ticket
  • PsExec / WMI / WinRM / DCOM
  • SSH / RDP 横向

4. 权限提升

  • Token 篡改 / 服务滥用
  • Potato 家族
  • 域提权(GPO/ACL滥用)

5. 持久化

  • 计划任务 / WMI 事件订阅
  • 注册表 / 启动项 / 服务
  • 黄金票据 / 白银票据

6. 隧道与代理

  • SOCKS 代理 / SSH 转发
  • FRP / Chisel / Ligolo
  • DNS / ICMP 隧道

7. AD/ADCS 专项

  • BloodHound 路径分析
  • ADCS 证书模板滥用
  • Exchange/SharePoint 攻击链

参考文档

  • references/06-intranet-and-host-operations-integrated.md — 内网操作整合参考
  • references/intranet-playbook-01~11-*.md — 各专项 Playbook(11 个)
  • references/intranet-pentest-playbook-skill.md — Playbook 入口
OSINT开源情报收集知识库,提供服务器、网站、域名及人员四维侦察模型。支持端口扫描、指纹识别、源码泄露检测及条件触发的社会工程学追踪,生成结构化Markdown报告。
需要深度OSINT情报收集 进行全方位网络侦察 涉及社会工程或人员信息追踪
vulnclaw/skills/specialized/osint-recon/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill osint-recon -g -y
SKILL.md
Frontmatter
{
    "name": "osint-recon",
    "routing": {
        "phases": [
            "recon"
        ],
        "task_types": [
            "osint",
            "recon"
        ]
    },
    "description": "OSINT 开源情报收集知识库 — 四维信息收集模型(服务器→网站→域名→人员),维度四(人员信息)条件触发"
}

OSINT 开源情报收集知识库

针对信息收集/侦察/社会工程场景的实战知识库,提供四维信息收集模型(服务器信息 → 网站信息 → 域名信息 → 人员信息),以及具体的工具使用方法和数据提取技巧。

recon Skill 的区别

  • recon → 技术层面侦察(端口扫描、DNS、目录枚举)— 基础版
  • osint-recon → 全维度侦察(服务器 + 网站 + 域名 + 人员/社会工程)— 深度版

核心原则

  1. 四维度全覆盖 — 服务器/网站/域名三个维度始终执行,人员维度按条件触发
  2. 从页面提取一切可提取的信息 — 不只看 HTTP 头,还要看 HTML 内容、JS 文件、注释
  3. 先被动后主动 — 先看响应头、DNS、WHOIS(被动),再做端口扫描/目录枚举(主动)
  4. 维度完成度自检 — 每轮检查哪些维度已完成 ✅,哪些未完成 ❌,全部完成后才允许 [DONE]
  5. 外部链接即线索 — 页面上的每个外部链接都可能是信息来源
  6. 结构化输出 — 所有发现汇总为 Markdown 报告

四维信息收集模型

维度一:服务器信息

检查项 工具/方法 说明
开放端口 & 服务版本 MCP nmap / python_execute + socket 全端口扫描或常见端口(21/22/80/443/3306/6379/8080/8443)
真实 IP 探测 DNS 历史记录 / 全局 Ping / 邮件头提取 CDN 后的源站 IP — SecurityTrails/DNSHistory/全局Ping
操作系统指纹 TTL 推断 + nmap OS 检测 Linux TTL≈64, Windows TTL≈128, Unix TTL≈255
中间件版本 响应头 Server + 错误页 + 特征文件 Apache/Nginx/IIS/Tomcat 版本识别
数据库识别 端口探测 + 错误信息 + 特征行为 MySQL(3306)/Redis(6379)/MongoDB(27017)/MSSQL(1433)

维度二:网站信息

检查项 工具/方法 说明
网站架构 响应头 + 页面特征 + JS 库 OS + 中间件 + 数据库 + 语言 + 框架 → 完整技术栈
Web 指纹 fetch + 响应特征匹配 CMS 类型、前端框架、JS 库、模板引擎
WAF 检测 wafw00f 逻辑 + 响应特征 拦截页面/特殊响应头/异常状态码
敏感目录 & 敏感文件 python_execute + 常见路径字典 /admin /backup /config /api /robots.txt /sitemap.xml
源码泄露 检查常见泄露路径 .git/.svn/.DS_Store/.env/web.config/备份文件(.bak/.swp/.old)
旁站查询 同 IP 反查域名 站长工具/微步在线/crt.sh 同 IP 查询
C 段查询 同网段存活主机扫描 nmap -sn 扫描 /24 网段

维度三:域名信息

检查项 工具/方法 说明
WHOIS 注册信息 python_execute + whois API/命令 注册人/注册商/NS 服务器/注册日期/到期日期
ICP 备案信息 工信部备案查询 API 仅中国大陆域名需查,境外域名无备案
子域名发现 crt.sh + 爆破 + 搜索引擎 + DNS 区域传送 多方法交叉验证,确保覆盖全面
DNS 记录全量 python_execute + dnspython/socket A/CNAME/MX/TXT/NS/SPF/SOA 全量查询
证书透明度日志 crt.sh / Censys / certspotter 发现历史证书、子域名、关联域名

维度四:人员信息 ⚡ 条件触发

⚠️ 此维度仅在以下条件之一满足时才执行:

  • 用户命令中明确提及"社会工程/社工/人员信息/作者追踪/人物画像"等
  • 目标网站有明确作者信息(meta author、about 页面、联系方式)

不应该做社工的情况:普通企业官网无个人作者 / 用户只要求"扫描目标" / 目标是 IP/内网地址

追踪方向 方法 说明
作者标识提取 页面 meta author、about 页面 用户名、昵称、邮箱
GitHub 追踪 fetch + GitHub API 仓库、语言偏好、贡献记录、邮箱
社交媒体 从页面提取链接 → 访问 B站、微博、知乎、Twitter、LinkedIn
跨平台关联 用用户名/邮箱搜索其他平台 相同 ID 跨平台搜索
历史提交 GitHub commits → 提交邮箱 关联其他项目和身份
泄露检测 GitHub 历史代码搜索 .env、config、密钥泄露

First-Pass 工作流

  1. 访问目标fetch 获取首页,提取 HTTP 头 + HTML 内容
  2. 维度一:服务器信息 → 端口扫描、真实 IP、OS 指纹、中间件/数据库识别
  3. 维度二:网站信息 → Web 指纹、WAF 检测、敏感目录/源码泄露、旁站/C段
  4. 维度三:域名信息 → WHOIS、ICP 备案、子域名、DNS 记录、证书透明度
  5. 维度四(条件触发) → 提取作者信息、跨平台追踪、信息汇总
  6. 维度完成度自检 → 确认每个维度至少做过一轮检查
  7. 汇总报告 → 生成 Markdown 格式侦察报告

场景路由

场景 参考文档 核心内容
服务器信息收集 server-recon.md 端口扫描、真实 IP、OS 指纹、中间件/数据库识别
网站信息收集 website-recon.md 架构/指纹/WAF/敏感目录/源码泄露/旁站/C段
Web 指纹识别 web-fingerprinting.md 框架检测、版本识别、技术栈推断
作者追踪方法 author-tracking.md 从页面提取作者 → 跨平台追踪 → 信息汇总
OSINT 工具使用 osint-toolkit.md crt.sh、GitHub API、搜索引擎 dork、旁站/C段/ICP
社会工程信息汇总 social-engineering-intel.md 人物画像、关系网络、信息交叉验证
侦察报告模板 recon-report-template.md 标准 Markdown 报告格式(四维度)

⭐ 常用提取代码片段

从 HTML 提取所有外部链接

import re
html = "..."  # fetch 获取的 HTML
links = re.findall(r'href=["\'](https?://[^"\']+)["\']', html)
for link in set(links):
    print(link)

从 HTML 提取作者信息

import re
# meta author
author = re.findall(r'<meta\s+name=["\']author["\']\s+content=["\']([^"\']+)["\']', html)
# about 页面链接
about_links = re.findall(r'href=["\']([^"\']*(?:about|me|contact)[^"\']*)["\']', html, re.I)

查询 crt.sh 子域名

import requests
domain = "example.com"
r = requests.get(f"https://crt.sh/?q=%.{domain}&output=json")
if r.status_code == 200:
    for entry in r.json():
        print(entry['name_value'])

GitHub 用户信息

import requests
username = "target_user"
r = requests.get(f"https://api.github.com/users/{username}")
if r.status_code == 200:
    data = r.json()
    print(f"Name: {data.get('name')}")
    print(f"Bio: {data.get('bio')}")
    print(f"Email: {data.get('email')}")
    print(f"Blog: {data.get('blog')}")
    print(f"Location: {data.get('location')}")
    print(f"Company: {data.get('company')}")

WAF 检测(响应特征法)

import requests
url = "https://target.com"
# 正常请求
r1 = requests.get(url)
# 触发 WAF 的请求(带攻击特征)
r2 = requests.get(url + "/?id=1' OR 1=1--")
# 对比响应
if r1.status_code != r2.status_code or len(r1.text) != len(r2.text):
    print("[!] 可能存在 WAF")
    print(f"正常状态码: {r1.status_code}, 攻击状态码: {r2.status_code}")

旁站查询(同 IP 反查域名)

import requests
ip = "1.2.3.4"
# 使用 chinaz API 或其他反查接口
# 也可以通过 crt.sh 查询同 IP 的证书
r = requests.get(f"https://crt.sh/?q={ip}&output=json")
提供渗透测试中常用工具的选型与命令速查,涵盖编码、红队、漏洞利用、内网、提权等14类场景,辅助快速回忆参数和筛选工具,不替代方法论。
已知漏洞类型需选择对应工具 忘记特定渗透工具的具体使用参数 需要快速对比同一任务下的多个候选工具
vulnclaw/skills/specialized/pentest-tools/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill pentest-tools -g -y
SKILL.md
Frontmatter
{
    "name": "pentest-tools",
    "description": "渗透工具速查 — 编码解码、反向Shell、红队工具、漏洞利用、密码攻击、内网工具、凭据窃取、提权、隧道代理、系统命令、信息收集、域渗透、Web工具、Windows工具"
}

渗透工具速查 Skill

当已知测试方向,需要选型工具或回忆命令时使用本 Skill。是操作支撑层,不是方法论替代。

使用场景

  • 已确认漏洞类型,需要对应工具和命令
  • 记不住某个工具的具体参数
  • 需要快速筛选同一任务下的候选工具

边界:本 Skill 帮助选型和回忆工具,不替代方法论。工具选择应跟随当前工作流阶段,而不是反过来。

工具分类速查

分类 覆盖范围
编码解码 Base64/URL/Hex/Unicode/HTML 编解码
反向 Shell Bash/Python/PowerShell/Netcat/Socat
红队工具 Cobalt Strike/Metasploit/Covenant
漏洞利用 Exploit-DB/Searchsploit/自动化框架
密码攻击 Hashcat/John/Hydra/Cewl
内网渗透 Impacket/CrackMapExec/BloodHound
凭据窃取 Mimikatz/LaZagne/Secretsdump
提权 LinPEAS/WinPEAS/PowerUp/BeRoot
隧道代理 Chisel/Ligolo/FRP/Socat/SSH
系统命令 Linux/Windows 常用命令集
信息收集 Nmap/Masscan/Amass/Subfinder
域渗透 BloodHound/Certipy/Rubeus/Kekeo
Web 工具 SQLmap/Nuclei/FFUF/Burp
Windows 渗透 PowerShell/WMI/WMIC/PowerView

参考文档

  • references/tools-reference-01~14-*.md — 各工具分类详细参考(14 个)
  • references/pentest-tools-reference-skill.md — 工具参考入口
  • references/tools-reference-index.md — 工具参考索引
用于渗透测试中路由明确后的快速Payload查找与验证顺序确认。涵盖Web注入、认证逻辑、AI/MCP及CTF专项速查,提供绕过方向与常见测试卡片,不替代方法论决策。
已知漏洞类型需快速筛选Payload 需要确认JWT、SSRF等特定技术验证顺序 CTF题目遇到PHP弱比较或RSA攻击场景
vulnclaw/skills/specialized/rapid-checklist/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill rapid-checklist -g -y
SKILL.md
Frontmatter
{
    "name": "rapid-checklist",
    "description": "渗透速查与Payload — 快速Payload家族、绕过提醒、验证顺序、常见测试卡片,适用于已知测试方向后快速查找"
}

渗透速查与 Payload Skill

仅在路由已明确后使用。本 Skill 用于快速查找,不替代方法论或工作流选择。

使用场景

  • 快速回忆某类漏洞或阻塞点应该先看什么
  • 快速筛选 Payload 家族、绕过方向和验证顺序
  • 快速确认 AI、MCP、容器、WebSocket、JWT、文件、认证、SSRF 等常见测试卡片
  • 从"我知道要测什么"进入"我先从哪一类验证开始"

不适用场景

  • 替代场景分流 → 用 pentest-flow
  • 替代方法论决策 → 用对应专项 Skill
  • 请求未抓到、重放未稳定时盲测 → 先用 client-reverse

CTF 专项速查

CTF 题目优先用 ctf-web / ctf-crypto / ctf-misc Skill,以下为快速卡片:

场景 快速定位
PHP 弱比较 → 0e 开头 MD5 值 ctf-webphp-bypass-cheatsheet.md
命令注入空格绕过 → ${IFS}/$IFS$9/< ctf-webcommand-injection-bypass.md
eval 无回显 → 写文件/DNS 外带 ctf-webeval-and-rce-techniques.md
RSA 小指数 → 立方根/Coppersmith ctf-cryptorsa-attacks-cheatsheet.md
Python Jail → __import__/func_globals ctf-miscpython-jail-escape.md
编码链 → base64→hex→ROT13 多层 ctf-miscencoding-chain-reference.md

快速路由卡片

Web 注入 / 输出执行

  • SQLi → ', ", ), 布尔差异, 时间差异, 报错差异
  • XSS → <script>, <img onerror>, javascript:, DOM sink
  • 命令注入 → ;id, |id, `id`, $(id)
  • SSTI → {{7*7}}, ${7*7}, <%= 7*7 %>, 模板引擎指纹
  • XXE → <!ENTITY>, 参数实体, OOB 外带

认证 / 逻辑 / Token

  • JWT → none算法, 算法篡改, 密钥爆破, jku/x5u 注入
  • CSRF → 缺少 Token, Token 可预测, Referer 校验缺陷
  • IDOR → 修改 ID 参数, 批量遍历
  • 支付逻辑 → 金额篡改, 负数, 竞态

浏览器签名 / 反爬

  • 先用 client-reverse 稳定重放
  • 阶段: locate → recover → runtime → validation

安卓运行态 / 签名恢复

  • 先用 client-reverse runtime-first 路径
  • 只有抓不到包/加密/无法重放时再逆向

AI / MCP

  • Prompt 注入 → 直接/间接/CoT 干扰
  • 工具滥用 → MCP 投毒/指令覆盖
  • 身份逃逸 → 角色越界/权限漂移

内网 / AD

  • 先用 intranet-pentest-advanced
  • 工具不确定时补看 pentest-tools

参考文档

  • references/08-rapid-checklists-and-payloads.md — 速查与 Payload 整合参考
  • references/testing-methodology.md — 测试方法论
提供Web应用渗透测试全流程,涵盖技术栈识别、目录枚举、认证与输入验证测试、逻辑漏洞检测及报告生成。
Web应用安全评估 渗透测试执行 漏洞扫描请求
vulnclaw/skills/specialized/web-pentest/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill web-pentest -g -y
SKILL.md
Frontmatter
{
    "name": "web-pentest",
    "routing": {
        "phases": [
            "recon",
            "vuln_discovery"
        ],
        "task_types": [
            "pentest"
        ],
        "target_types": [
            "web",
            "api"
        ],
        "vulnerability_classes": [
            "auth_bypass",
            "file_upload",
            "idor",
            "business_logic"
        ]
    },
    "description": "Web应用渗透测试 — 针对Web应用的完整渗透流程,含技术栈识别、目录枚举、认证测试、输入验证、逻辑漏洞"
}

Web 应用渗透测试 Skill

针对 Web 应用的专项渗透测试流程,覆盖从信息收集到漏洞验证的完整链路。

需要更深入的 Web 安全知识? 使用 web-security-advanced Skill,包含完整的注入攻击族、协议安全、Playbook 等。

1. 技术栈识别

  • 使用 fetch 工具获取 HTTP 响应头
  • 使用 chrome-devtools 工具分析前端技术
  • 识别后端框架和 CMS

2. 目录枚举

  • 常见目录:/admin, /api, /upload, /config, /backup
  • 敏感文件:robots.txt, sitemap.xml, .env, .git/HEAD
  • API 文档:/swagger, /docs, /api-docs

3. 认证测试

  • 默认凭据测试
  • 暴力破解检测
  • 会话管理缺陷
  • JWT 安全测试

4. 输入验证测试

  • SQL 注入
  • XSS(反射/存储/DOM)
  • SSRF
  • LFI/RFI
  • 命令注入
  • 文件上传

5. 逻辑漏洞测试

  • 越权访问(水平/垂直)
  • 业务逻辑绕过
  • 竞态条件
  • 支付逻辑漏洞

6. 输出

  • Web 渗透报告
  • PoC 脚本

参考文档

  • references/web-injection.md — 注入攻击详细参考
  • references/web-logic-auth.md — 认证与逻辑漏洞
  • references/web-modern-protocols.md — 现代协议安全
面向Web应用、API及网关的系统性高级安全测试Skill,覆盖注入、协议、认证逻辑、文件及部署安全。通过场景路由指引参考文档,侧重渗透方法论,CTF场景建议复用ctf-web。
Web应用或API系统漏洞测试 网关或浏览器面向服务的安全评估 需要执行完整渗透测试Playbook
vulnclaw/skills/specialized/web-security-advanced/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill web-security-advanced -g -y
SKILL.md
Frontmatter
{
    "name": "web-security-advanced",
    "routing": {
        "phases": [
            "vuln_discovery",
            "exploitation"
        ],
        "task_types": [
            "pentest",
            "audit"
        ],
        "target_types": [
            "web",
            "api"
        ],
        "exclude_signals": [
            "无法重放",
            "签名阻塞",
            "重放被阻"
        ],
        "vulnerability_classes": [
            "sqli",
            "xss",
            "ssrf",
            "ssti",
            "xxe",
            "rce",
            "deserialization",
            "idor",
            "csrf",
            "cors",
            "file_upload",
            "path_traversal",
            "auth_bypass",
            "jwt",
            "oauth",
            "graphql",
            "websocket",
            "request_smuggling",
            "prototype_pollution",
            "business_logic"
        ]
    },
    "description": "Web高级安全测试 — 注入攻击族、协议安全、认证与逻辑漏洞、文件与部署安全、现代Web攻击面,含完整Playbook"
}

Web 高级安全测试 Skill

当目标是 Web 应用、API、网关或浏览器面向服务,且需要系统性的漏洞测试时使用本 Skill。

前置条件:如果请求仍由客户端控制且重放未稳定,先使用 client-reverse Skill。

CTF 场景路由

当目标为 CTF 题目(已知有 flag,需要绕过特定过滤)时,优先使用 ctf-web Skill 获取具体绕过值和 payload:

CTF 场景 路由到 ctf-web 参考文档
PHP 弱比较/类型绕过 ctf-web references/php-bypass-cheatsheet.md
命令注入空格绕过 ctf-web references/command-injection-bypass.md
eval 回显/无回显 ctf-web references/eval-and-rce-techniques.md
PHP 代码审计 ctf-web references/php-code-audit-checklist.md
SSTI 注入链 ctf-web references/ssti-injection-chains.md
反序列化利用链 ctf-web references/deserialization-playbook.md
文件上传 → RCE 本 Skill references/web-playbook-08-file-vulnerabilities.md

本 Skill 侧重渗透测试方法论,CTF 实战绕过值和 payload 模板请参考 ctf-web

场景路由

攻击面类型 首选参考
参数注入(SQLi/XSS/命令执行/SSTI/XXE) references/web-injection.md
协议安全(CORS/GraphQL/WebSocket/OAuth/请求走私) references/web-modern-protocols.md
认证与逻辑(IDOR/越权/支付/密码重置/鉴权绕过) references/web-logic-auth.md
文件与基础设施(上传/遍历/包含/部署/缓存/CDN/云) references/web-file-infra.md
部署安全 references/web-deployment-security.md

测试流程

1. 输入验证测试

  • SQL 注入:布尔/时间/报错/Union/堆叠
  • XSS:反射/存储/DOM/CSP 绕过
  • 命令注入:分隔符绕过、编码绕过
  • SSTI:模板引擎识别 + RCE 链
  • XXE:实体注入、OOB 数据外带
  • 反序列化:Java/PHP/Python 链

2. 认证与会话测试

  • 默认凭据、暴力破解
  • 会话管理缺陷(固定/劫持/不安全 Cookie)
  • JWT 安全(算法篡改/密钥爆破/none算法)
  • OAuth/OIDC 配置缺陷
  • MFA 绕过

3. 逻辑漏洞测试

  • 越权访问(水平/垂直)
  • 业务逻辑绕过(支付/优惠券/投票)
  • 竞态条件
  • IDOR(不安全直接对象引用)

4. 协议安全测试

  • CORS 配置错误
  • GraphQL 内省/注入
  • WebSocket 认证与注入
  • HTTP 请求走私
  • SSRF(内网探测/云元数据)

5. 文件与部署安全

  • 文件上传绕过
  • 路径穿越
  • LFI/RFI
  • CDN/缓存投毒
  • 供应链攻击
  • 云安全配置

参考文档

  • references/web-injection.md — 注入攻击详细参考
  • references/web-modern-protocols.md — 现代协议安全
  • references/web-logic-auth.md — 认证与逻辑漏洞
  • references/web-file-infra.md — 文件与基础设施安全
  • references/web-deployment-security.md — 部署安全
  • references/web-ai-attack-map.md — Web 与 AI 攻击映射
  • references/web-playbook-*.md — 各专项 Playbook(23 个)
安卓应用渗透测试技能,遵循运行态优先原则。通过ADB、Burp抓包和Frida Hook进行自动化探索与深度分析,最后才进行逆向,输出包含漏洞证据的专项报告。
安卓App渗透测试 APK安全分析 Android抓包Hook
vulnclaw/skills/specialized/android-pentest/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill android-pentest -g -y
SKILL.md
Frontmatter
{
    "name": "android-pentest",
    "routing": {
        "tooling": [
            "frida",
            "jadx",
            "scrcpy"
        ],
        "task_types": [
            "pentest"
        ],
        "target_types": [
            "android",
            "mobile"
        ]
    },
    "description": "安卓应用渗透测试 — APK分析、Hook、自动化测试、运行态驱动、签名恢复、抓包分析"
}

安卓应用渗透测试 Skill

针对安卓应用的专项渗透测试,遵循 runtime-first 原则:先运行态驱动、先抓包,最后才逆向。

需要更深入的客户端逆向知识? 使用 client-reverse Skill,包含完整的签名恢复、加密还原、Burp 重放工作流。

核心原则

不要先逆向 APK。默认操作顺序:

  1. 确认目标 App 已安装在连接设备上
  2. 准备好 Burp 或 Charles 抓包
  3. 用 scrcpy_vision 驱动真实业务流程
  4. 每个关键动作后检查抓包状态
  5. 包可见且可重放 → 直接做 Web/API 安全测试
  6. 只有抓不到包/包被加密时 → 升级到 jadx/frida/ida

1. 环境准备

  • 通过 adb-mcp 连接设备/模拟器
  • 通过 jadx 反编译目标 APK
  • 通过 burp-mcp 配置代理抓包

2. 自动化探索

  • 启动 APP,通过 adb-mcp 自动截图
  • 通过 frida-mcp Hook 关键函数
  • 通过 burp-mcp 捕获和分析数据流
  • 自动点击 UI 元素,遍历功能点
  • 模拟用户行为,识别敏感数据流

3. 深度分析

  • 通过 jadx 审计源码(硬编码密钥、弱加密等)
  • 通过 frida 动态 Hook(SSL Pinning 绕过、参数篡改)
  • 通过 burp 修改重放请求(鉴权绕过、越权测试)

4. 漏洞验证

  • 构造恶意输入,验证漏洞
  • 截图记录漏洞证据
  • 生成 PoC

5. 输出

  • 安卓专项渗透报告
  • 包含截图、流量、代码审计结果

参考文档

  • references/android-authorized-app-pentest-sop.md — 安卓 App 渗透 SOP
  • references/android-external-url-runtime-first-workflow.md — 安卓外部 URL 测试
  • references/android-ui-driven-observation-and-packet-loop.md — UI 驱动观察循环
  • references/android-network-layer-testing-quick-reference.md — 网络层测试速查
  • references/android-signing-and-crypto-workflow.md — 签名与加密工作流
  • references/android-static-triage-and-callflow.md — 静态分层与调用链
  • references/android-dynamic-hooking-and-replay.md — 动态 Hook 与重放
Web与AI安全测试知识库,集成WooYun、先知、GAARM及OWASP数据。针对渗透、CTF等实战场景,提供精准漏洞挖掘与利用指引。严格区分假设与确认,强制引用参考文件以防范幻觉,确保输出合规且可追溯。
用户执行渗透测试、漏洞挖掘或红队攻防任务 进行CTF竞赛解题或SRC安全审计 涉及AI/LLM安全测试如Prompt注入、越狱或沙箱逃逸 用户明确提供目标(URL/代码/模型)并意图为测试或利用
vulnclaw/skills/specialized/secknowledge-skill/SKILL.md
npx skills add Unclecheng-li/VulnClaw --skill secknowledge-skill -g -y
SKILL.md
Frontmatter
{
    "name": "secknowledge-skill",
    "routing": {
        "broad": true,
        "task_types": [
            "pentest",
            "audit",
            "bugbounty",
            "ctf"
        ],
        "target_types": [
            "web",
            "ai_agent"
        ]
    },
    "description": "Web+AI 安全测试知识库。融合 WooYun 88,636 案例 + 先知 L1-L4 方法论 + GAARM 150 风险\n+ OWASP Top 10 (LLM\/ASI\/WSTG)。\nTRIGGER when 任务是实战安全测试:渗透测试、漏洞挖掘\/利用、红队攻防、安全审计 (SAST\/DAST)、\nCTF、AI\/LLM 安全测试 (Prompt 注入\/越狱\/MCP\/Agent\/沙箱逃逸)。用户明确给出测试目标\n(URL\/代码\/模型\/Agent 架构) 且意图是\"测试\/审计\/挖漏洞\/利用\"。\nDO NOT trigger:\n- 安全概念讨论(\"什么是 XSS\"、\"SQL 注入原理是什么\")→ 普通问答\n- 非安全性质的 code review \/ debug \/ 性能优化 → code-audit-skill 或其他\n- 修复语法错误 \/ 业务逻辑 bug → 普通编程协助\n- 纯 Web 白盒代码审计(完整项目目录 \/ Source-Sink 污点分析)→ code-audit-skill\n- 仅引用 CVE 编号查文档 → WebSearch\n边界细则: CTF 短代码片段 + 利用思路 → 本 Skill;完整项目目录 + 系统白盒审计 → code-audit-skill\n"
}

Web 和 AI 安全测试知识库

知识源: WooYun 88,636 漏洞 × 先知 5,600+ 文档 × GAARM 150 AI 风险 × OWASP 架构: SKILL.md(路由)→ references/(按场景加载)

VulnClaw 集成说明

  • 本 Skill 集成自 Pa55w0rd/secknowledge-skill,在 VulnClaw 中作为 secknowledge-skill specialized skill 使用;上游声明为 MIT License。
  • CTF/SRC 场景先加载 references/vulnclaw-ctf-src-routing.md 判断资料入口,再按漏洞类型加载 web-*ai-*testing-methodology.mdgaarm-risk-matrix.md
  • 与 VulnClaw 现有技能协同:CTF 单题技巧优先结合 ctf-web/ctf-crypto/ctf-misc,SRC 和实战漏洞挖掘优先使用本 Skill 的方法论、案例映射、风险矩阵和证据约束。
  • 输出时保留上游的授权边界、引用标注和"假设/确认"区分;未能从 reference 佐证的 payload、CVE、GAARM/OWASP 编号必须明确标注为未核对。

触发条件

触发条件(AND 组合)

  1. 用户意图是执行安全测试(渗透/挖洞/利用/审计) — 非讨论/学习
  2. 提供了具体目标:URL、接口、代码片段、模型/Agent 架构、MCP 配置 — 非抽象问题
  3. 任务涉及以下领域之一
    • Web: SQL 注入/XSS/命令执行/越权/文件上传/SSRF/反序列化/XXE/GraphQL/HTTP 走私
    • AI: Prompt 注入/越狱/MCP 投毒/Agent 滥用/RAG 投毒/沙箱逃逸/模型窃取
    • 绕过: WAF/内容过滤/Guard Rails 绕过

不触发(任一命中即路由到他处):

  • 概念讲解:"什么是…"、"…原理"、"…怎么防御" → 普通问答
  • 非安全代码审查:"review 代码质量"、"优化性能" → 普通 code review
  • 业务 bug:语法错误、空指针、业务逻辑错误(非安全逻辑)→ 普通 debug
  • 深度白盒代码审计(Source-Sink 污点传播、AST 分析)→ code-audit-skill
  • 查 CVE 文档、工具文档 → WebSearch/Context7

歧义处理:目标和意图不明时,先问:"目标是什么?你希望做渗透测试 / 代码审计 / 还是了解概念?"

行为准则(整个会话有效,不因对话长度放松)

  1. 所有 Payload/CVE 编号/风险编号必须引用 reference 文件的具体章节 — 每次输出前自检。未在 reference 中的一律标注 "UNABLE TO CITE",禁止编造。
  2. 区分"漏洞假设"与"漏洞确认" — 基于方法论推断的潜在风险 → 标注 假设(需验证);有明确证据的 → 标注 已确认(证据: …)。禁止混淆。
  3. 授权边界 — 任何利用步骤输出前必须确认是 CTF/授权渗透/本人环境。无授权上下文只输出分析,不输出可直接武器化的完整 Payload。

幻觉防护与来源引用

内容类型 正确输出 禁止输出
CVE 编号 引用具体 reference 文件和章节,或标 "UNABLE TO CITE — 建议 WebSearch 核实" 编造 CVE-YYYY-NNNN
Payload references/web-*.mdreferences/ai-*.md 内 payload 章节引用 凭印象写 payload
GAARM 风险编号 引用 references/gaarm-risk-matrix.md 自造编号
OWASP 条目 LLM01-10 / ASI01-10 / WSTG-* 引用 testing-methodology.md §10.x 改写编号含义
工具/命令 仅使用在 reference 中出现过的,或明确标注 "通用命令(未在 reference 中核对)" 伪造工具参数
无检索结果 "UNABLE TO ASSESS:reference 未覆盖此场景,建议 WebSearch" 凭经验推测作为结论

标注分级

  • [引用] — 来自 reference 具体章节(需带 file:section)
  • ⚠️ 通用知识 — 未在本 Skill reference 中核对,仅作提示
  • 💡 建议 — 方法论推理,非事实声明

输出约束

禁止输出:

  • 开场白:"让我来分析…" / "首先我们需要…" / "根据你的需求…"
  • 工具调用描述:"我将使用 Read 工具读取 XX"
  • 已知信息复述(用户刚说的 URL、目标类型)
  • 无来源引用的 Payload 或 CVE 编号
  • 未经授权场景下的完整武器化链

输出限制:

  • 单次回复 ≤ 3 个层次的建议(避免信息膨胀)
  • Payload 示例 ≤ 5 条/漏洞类型(完整列表引用 reference)
  • 使用表格/速查格式,禁止长段落叙述

工具优先级(本 Skill 自用)

操作 首选 降级条件 降级工具
读 reference Read Read 失败 Bash cat
搜索关键词/CVE Grep (reference 内) 连续 2 次未命中 WebSearch
代码审计目标 委派 code-audit-skill

单次超时 ≠ 不可用,必须重试 1 次后才能降级。

使用流程

依赖链约束(贯穿三步,强制):

  • Step 2 输入 == Step 1 的"已定位 reference 列表",不得新加文件
  • Step 3 引用集合 ⊆ Step 2 的"已加载列表",禁止在 Step 3 重新搜索 reference
  • Step 3 Checkpoint 中的引用计数必须能在 Step 2 Checkpoint 中找到对应来源

Step 1: 目标分类 + reference 定位

  • 判断:Web / AI / Web+AI 混合 / 容器沙箱
  • 定位:按"场景导航索引"找到对应 reference 文件,记为列表 L1

失败降级:

  • 目标信息不足无法分类 → 触发歧义澄清问题,不猜测;不允许默认归类为 "Web+AI 混合"
  • 场景导航索引未覆盖该场景 → 标注 "UNABLE TO CITE: 场景 {X} 不在索引内",列表 L1 为空,进入 Step 3 时只能输出方法论级建议

✅ Checkpoint: Step 1 完成: 目标类型={X}, |L1| == 场景导航索引匹配数 = {N}

Step 2: 按需加载 Step 1 定位的 reference(懒加载)

  • 输入: Step 1 产出的列表 L1;记本步加载集合为 L2,必须满足 L2 ⊆ L1
  • 每次加载 1 个文件,单次 ≤ 1000 tokens;超出预算的 reference(如 ai-identity-app.md 906 行、ai-data-app.md 903 行)必须用 Read offset/limit 或 Grep 定位后再读
  • 禁止在本步加载未在 L1 中的文件

失败降级:

  • Read 失败 → 重试 1 次 → 仍失败用 Bash cat → 都失败 → 标注 "UNABLE TO ASSESS: 文件不可读",从 L2 移除该项,不允许跳过到 Step 3
  • Grep 无命中 → 标注 "UNABLE TO CITE: {关键词} 未在 {文件} 中检出"
  • reference 文件不存在 → 标注断链 + 列入待补 reference 清单,不编造内容

✅ Checkpoint: Step 2 完成: |L2| == |L1| - 不可读文件数 = {M}, 合计 {X} tokens

Step 3: 按方法论输出测试思路(L1→L4)

  • 输入: Step 2 产出的加载集合 L2;本步所有引用必须 ⊆ L2
  • L1 攻击面识别 → L2 假设构建 → L3 深度利用 → L4 防御反推
  • 每条结论必须引用 L2 中某文件的具体 section/行号;无依据 → 标注 "UNABLE TO CITE" 并停止该假设线
  • 禁止重新搜索:本步发现需要新 reference → 回到 Step 1 重新定位,而不是直接 Read/Grep

✅ Checkpoint: Step 3 完成: 输出 N 条假设, 其中 已引用 M 条 + UNABLE TO CITE K 条 == N (等式验收)

全流程交叉验证:

  • Step 3 引用的所有文件 ∈ Step 2 的 L2(grep 验证)
  • 已引用条数 + UNABLE TO CITE 条数 == 总假设条数

场景导航索引

每行指向对应 reference。详细 Payload/案例/方法论全部在 reference 中,本 SKILL.md 不再展开。

核心方法论

场景 reference
L1-L4 思维金字塔 + WooYun 漏洞公式 + GAARM 映射 references/testing-methodology.md
OWASP Top 10 映射(LLM/ASI/WSTG) testing-methodology.md §10.1-10.3
GAARM 150 条风险编号 references/gaarm-risk-matrix.md

Web 安全(按漏洞类型)

场景 reference
SQL 注入(含 SQLMap 速查) references/web-sqli.md
XSS 跨站脚本 references/web-xss.md
命令执行(RCE) references/web-rce.md
XXE(XML 外部实体) references/web-xxe.md
反序列化漏洞 references/web-deser.md
文件上传(含 Webshell 免杀) references/web-upload.md
文件遍历 / 文件包含 references/web-traversal.md
信息泄露(.git / 备份 / 错误信息) references/web-leak.md
SSRF / 服务器配置错误 / CMS+URL 附录 references/web-ssrf-misc.md
越权 / 支付 / 密码重置 / 会话 / API 鉴权 references/web-logic-auth.md
CORS / GraphQL / HTTP 走私 / WebSocket / OAuth references/web-modern-protocols.md
供应链 / 云配置 / 容器 / CI/CD / 框架 CVE references/web-deployment-security.md

AI/LLM 安全(按 GAARM 阶段)

安全域 应用阶段 部署阶段 训练阶段
AI 应用(应用阶段按风险大类细分↓) 见下方细分表 ai-app-deploy.md ai-app-train.md
AI 模型(应用阶段按风险大类细分↓) 见下方细分表 ai-model-deploy.md ai-model-train.md
AI 数据(Prompt 泄露/窃取/推断) ai-data-app.md ai-data-deploy.md ai-data-train.md
AI 身份(角色逃逸/Agent 伪造) ai-identity-app.md ai-identity-deploy.md ai-identity-train.md
AI 基座(容器/沙箱/供应链) ai-baseline-app.md ai-baseline-deploy.md ai-baseline-train.md

AI 应用 - 应用阶段按风险大类:

风险类别 GAARM 编号 reference
Prompt 注入与变种(直接/间接/XSS/Memory/蠕虫/混淆/编码/反向诱导/多模态) GAARM.0039, 0040.x, 0043.x, 0044, 0045, 0061 ai-app-prompt.md
MCP 协议攻击(地毯式骗局/工具投毒/指令覆盖/隐藏指令) GAARM.0046.x ai-app-mcp.md
Agent 与 CoT 攻击(Agent 利用/SSRF/RCE/CoT/查询注入/环境注入) GAARM.0041.x, 0042.x, 0047, 0056.001, 0060 ai-app-agent-cot.md

AI 模型 - 应用阶段按风险大类:

风险类别 GAARM 编号 reference
越狱(DAN/Many-shot/对抗后缀/概念激活) GAARM.0027.x ai-model-jailbreak.md
幻觉(事实/跨模态) GAARM.0028.x, 0064 ai-model-hallucination.md
非合规内容(偏见/暴力/政治/虚假/诱导) GAARM.0029.x ai-model-content.md
版权与商业违法 GAARM.0030.x ai-model-copyright.md
功能滥用与信息伪造(图/音/视频/钓鱼) GAARM.0031.x, 0033, 0062, 0063 ai-model-misuse.md
对抗样本与模型提取 GAARM.0032.x ai-model-extraction.md

专项 reference:

  • AI Agent / MCP / Skills 2025-2026 前沿风险 → references/ai-app-frontier.md
  • 容器与沙箱逃逸实战方法论 → references/ai-baseline-escape.md

Payload 速查(按场景在主 reference 中查找)

场景 reference
SQL 注入 Payload references/web-sqli.md
XSS Payload references/web-xss.md
RCE / 命令执行 Payload references/web-rce.md
反序列化 / XXE Payload references/web-deser.md / references/web-xxe.md
文件上传绕过 / 路径遍历 Payload references/web-upload.md / references/web-traversal.md
SSRF Payload references/web-ssrf-misc.md
Web 现代协议 Payload(GraphQL/HTTP 走私/WebSocket) references/web-modern-protocols.md
Prompt 注入 Payload references/ai-app-prompt.md
MCP 投毒 Payload references/ai-app-mcp.md
Agent / CoT 注入 Payload references/ai-app-agent-cot.md
越狱 / 对抗后缀 Payload references/ai-model-jailbreak.md
容器逃逸 / 持久化 / 横向移动 references/ai-baseline-escape.md

零结果处理

情况 正确动作
Grep 未命中 reference "UNABLE TO CITE: 该场景 {X} 未在 reference 中覆盖。建议 WebSearch 或补充 reference"
用户给的 URL 无响应 "UNABLE TO ASSESS: 目标不可达" — 不基于 URL 结构猜测漏洞
需要执行但无授权上下文 "仅输出分析,不输出武器化链。如为授权测试,请明确授权范围"
reference 与用户场景部分匹配 引用已匹配部分 + 明确标注未覆盖部分为 "UNABLE TO CITE"

与其他 Skill 的路由

用户诉求 正确路由
渗透测试 / 红队 / CTF / 挖洞 本 Skill
Java/JS 深度白盒代码审计(Source-Sink) code-audit-skill
Mirawork 平台专项测试 mirawork-security-tester
WooYun 历史漏洞分析方法论 wooyun-legacy
先知社区研究方法论 xianzhi-research

v2.0 | 知识源: WooYun 88,636 × 先知 5,600+ × GAARM 150 × OWASP LLM/ASI/WSTG

ホーム - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-14 10:44
浙ICP备14020137号-1 $お客様$