VulnClaw CTF三大知识库实战:ctf-web、ctf-crypto与ctf-misc

VulnClaw CTF三大知识库实战:ctf-web、ctf-crypto与ctf-misc

【免费下载链接】VulnClaw 基于 AI Agent + MCP 工具链 + 渗透 Skill 编排, 配合大语言模型, 自然语言输入 → 自动完成「信息收集 → 漏洞发现 → 漏洞利用 → 报告生成」全流程。 【免费下载链接】VulnClaw 项目地址: https://gitcode.com/GitHub_Trending/vu/VulnClaw

VulnClaw 是一款基于 AI Agent 的智能安全工具,除了自动渗透测试,它还内置了面向 CTF 夺旗赛的三大知识库:ctf-web(Web 攻防)、ctf-crypto(密码学攻击)、ctf-misc(杂项解题)。这三个知识库以"速查表"风格编写,直接给出可用的绕过值、payload 和攻击思路,配合大语言模型自动完成判题、选路、验证全流程,是 CTF 新手快速上手的完整指南。

三大知识库定位一览

知识库路径解决什么问题
🕸️ ctf-webvulnclaw/skills/specialized/ctf-web/SKILL.mdPHP 弱比较、命令注入绕过、SSTI、反序列化、代码审计
🔐 ctf-cryptovulnclaw/skills/specialized/ctf-crypto/SKILL.mdRSA/AES/ECC 攻击、PRNG 预测、古典密码、格攻击
🎲 ctf-miscvulnclaw/skills/specialized/ctf-misc/SKILL.md沙箱逃逸、编码链解码、隐写术、游戏逆向、CTFd 平台

三者有个共同的设计原则:精确值优于方法论——不告诉你"可以尝试",而是直接给出"0e 开头 MD5 值大全""双写绕过公式""子类索引表"这类拿来即用的实战内容。

ctf-web:PHP Web 题实战知识库

这是三个知识库中内容最"硬核"的一个,核心思想是:先想能不能"直接读",再想怎么"绕过"。

1. PHP 伪协议优先原则

题目出现 ?file=xxx、?page=xxx 等参数传文件名的特征时,知识库要求先试 php://filter 再想其他方法:

  • convert.base64-encode 被称为"万能读取器":PHP 文件被 include 会执行,但 base64 编码后不会执行,可直接拿到源码
  • 参数名不一定叫 file,page、num、path、template 都可能有效

2. 内置速查表清单

场景参考文档核心内容
PHP 弱比较/类型绕过php-bypass-cheatsheet.md0e 开头 MD5 值大全、数组绕过、extract() 覆写
双写绕过速查同上 + SKILL.md 内置表NSSNSSCTFCTF → 替换后拼出 NSSCTF,含 8 组已验证过滤词
命令注入空格绕过command-injection-bypass.md${IFS}/$IFS$9/</%09/%0a 全表
eval/RCE 技巧eval-and-rce-techniques.mdsystem/exec/passthru 区别、无回显外带
SSTI 注入链ssti-injection-chains.mdJinja2/Twig/ERB/Mako 注入链速查
反序列化利用链deserialization-playbook.mdPHP/Java/Python 反序列化、SoapClient CRLF
代码审计php-code-audit-checklist.md输入入口→过滤→危险函数→输出分析
flag 位置速查web-ctf-quick-reference.md/flag、/proc/self/environ、phpinfo 环境变量段等优先级清单

3. 新手最常踩的坑:RCE 之后找不到 flag

知识库把"RCE 得手后的 flag 位置优先级"写成了清单:cat /flag → cat /flag.txt → ls / 找文件名 → 容器环境变量。特别提醒:ls 默认列的是当前目录(通常是 /var/www/html/),根目录的 /flag 必须 ls / 才能看到——这是新手丢分的重灾区。

另外还有一个"长度限制绕过"首推策略:当 eval() 被 strlen() 卡住(如 ≤18 字符)时,直接用 $_GET 链式传参,把 eval($_GET['A'])(仅 16 字符)放在长度受限的参数里,真正的命令放在第二个参数中,无需费心缩短 payload。

ctf-crypto:密码学攻击知识库

与负责编解码操作的 crypto-toolkit 不同,ctf-crypto 解决的是**"知道加密参数后怎么打"**的问题。

1. 快速判题表

知识库提供了一张"看参数定攻击"的判题表:

题目特征可能攻击参考文档
给了 n, e, cRSA 全家桶rsa-attacks-cheatsheet.md
e=3 或 e 很小小指数/广播攻击同上
多组参数且 n 相同共模攻击同上
n 大但 e 大Wiener 攻击同上
AES-CBC + 解密 oraclePadding Oracleaes-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

2. RSA 攻击决策树

rsa-attacks-cheatsheet.md 用一棵决策树覆盖全部常见攻击:Håstad 广播(同明文多次加密)→ 共模(同 n 不同 e)→ Wiener(e 大 d 小)→ Fermat/Pollard p-1 分解 → Coppersmith(已知部分明文),每种攻击都附带 Python 代码片段,Agent 拿到题目后按树对号入座即可。

3. 核心原则

密码学攻击对参数极其敏感,知识库要求先识别加密体系(看密钥长度、加密模式、已知量)再动手,所有攻击代码通过 python_execute 实际执行验证,绝不"脑补"解密结果。

ctf-misc:杂项题型知识库

CTF 杂项题是新手最迷茫的赛道,ctf-misc 用六份文档覆盖了最高频的题型:

场景参考文档核心内容
Python 沙箱逃逸python-jail-escape.md__import__/func_globals 逃逸链、子类索引表、下划线/引号/方括号过滤绕过
Bash 沙箱逃逸bash-jail-escape.mdHISTFILE/ctypes.sh/vi 编辑器逃逸
编码链识别与解码encoding-chain-reference.mdBase64→Hex→ROT13 多层嵌套识别特征表、自动解码脚本
游戏/自定义 VM 逆向game-and-vm-reverse.mdWASM/Brainfuck/Z3 约束求解
CTFd 平台操作ctfd-platform-guide.mdAPI 批量下载附件、提交 flag、查排行榜
Linux 提权linux-privesc-quick.mdSUID/sudo/cron/内核漏洞路径

两个亮点值得新手重点看:

  • Python Jail 决策树:python-jail-escape.md 把"能否 import → 能否访问 builtins → 被过滤了什么字符"整理成一棵决策树,连"下划线被过滤用 \x5f、引号被过滤用 chr()、数字被过滤用 True/False 拼"这类细节都列成了对照表
  • 编码链识别特征表:见到末尾带 = 想 Base64、偶数长度 0-9A-F 想 Hex、%XX 想 URL 编码——encoding-chain-reference.md 把 10 种编码的"一眼识别特征"做成了表格,还内置了自动多层解码脚本,杂项题第一关基本通吃

VulnClaw 如何自动调用这些知识库

VulnClaw 的知识库不是静态文档堆,而是一套路由驱动的 Skill 体系,这是它与普通"笔记仓库"的最大区别:

  1. 声明式路由:每个 SKILL.md 的 frontmatter 中声明 routing 元数据(target_types: [ctf, web]、vulnerability_classes: [rce, ssti, ...]),由 vulnclaw/skills/routing.py 解析为强类型路由信号,任务类型、技术栈、漏洞类别匹配后自动注入对应知识库
  2. 场景二级路由:SKILL.md 内部再按"题目特征 → 参考文档"做第二层路由,Agent 判题后只加载需要的速查表,控制上下文消耗
  3. flag 状态机:vulnclaw/agent/ctf_mode.py 实现了 CTF 专属的 flag 声明/验证状态机——Agent 声称找到 flag{...} 后必须进入验证环节,防止"以为拿到了其实没拿到"的假阳性
  4. 工具闭环验证:知识库反复强调"所有 payload 必须用 fetch 或 python_execute 实际发送验证,不猜测结果",某个 payload 失败后立即记录、不重复尝试

快速上手:三步开始解题

  1. 获取 VulnClaw:执行 git clone https://gitcode.com/GitHub_Trending/vu/VulnClaw,按 README.md 安装依赖
  2. 配置模型与目标:按 docs/mcp-deployment.md 完成大模型与工具链配置,把 CTF 题目地址作为目标输入
  3. 自然语言驱动:直接描述题目(如"给我一个 CTF Web 题,页面有登录框,源码里有 preg_replace 过滤"),Agent 会自动完成判题 → 路由到知识库 → 选 payload → 工具验证 → 提交 flag 全流程;也可阅读 vulnclaw/agent/ctf_mode.py 了解其 flag 验证机制

想深入理解技能加载与调度机制,可以看 vulnclaw/skills/dispatcher.py 和 vulnclaw/skills/loader.py 的源码实现。

总结

VulnClaw 的三大 CTF 知识库把"高手脑中的经验"沉淀成了机器可读的速查表:

  • ctf-web 给你 PHP 题的精确绕过值和 flag 位置优先级
  • ctf-crypto 给你"看参数定攻击"的判题决策树
  • ctf-misc 给你沙箱逃逸决策树和编码识别特征表

配合声明式路由和 flag 状态机,新手不需要背知识点——VulnClaw 会在正确的时机把正确的速查表递给模型,并坚持"工具验证、不猜测结果"的闭环原则。对于想系统提升 CTF 解题效率的选手,这三大知识库既是提效工具,也是绝佳的学习资料。

【免费下载链接】VulnClaw 基于 AI Agent + MCP 工具链 + 渗透 Skill 编排, 配合大语言模型, 自然语言输入 → 自动完成「信息收集 → 漏洞发现 → 漏洞利用 → 报告生成」全流程。 【免费下载链接】VulnClaw 项目地址: https://gitcode.com/GitHub_Trending/vu/VulnClaw

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值