边解 CTF 题边讲套路与知识点,自动生成可复现 Writeup
29.6/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/22 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Wangxiaolu0716/ctf-solve-teach该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · skill
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 13 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 1 处,展示前 1 条)
- 读取本地文件plugin/index.js:72
const text = readFileSync(SKILL_FILE, 'utf8')
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DSH 插件 · 教学式 CTF 解题技能:边解边讲套路/工具/知识点,收尾在 solves/<题目名>/ 生成可复现 Writeup(npm: dsh-ctf-solve-teach)
README
由 DeepSeek 最新模型翻译生成🧩 ctf-solve-teach · 解题即教学
给 AI 用的技能:解 CTF 题时不许闷头算答案,必须边解边讲——这一步是什么套路、为什么用这个工具、背后的知识点是什么。
收尾自动在 solves/<题目名>/ 里产出可复现的完整 Writeup。
两种用法:作为 DSH 插件安装(装完技能自动出现在技能目录),或者把 skills/ctf-solve-teach/ 整个复制进任意智能体的技能目录。
dsh plugin add dsh-ctf-solve-teach # npm 包
dsh plugin add github:Wangxiaolu0716/ctf-solve-teach # 或直接从仓库装
解决什么问题
用 AI 做 CTF,最常见的两种失败:
1. 一口价答案。AI 三秒给出 flag,你抄完什么也没学到——下次换个皮还是不会。
2. 流水账 WP。过程很详细,但没有「为什么用这个工具」,也没有「这个机制为什么存在」,看完只会做这一道题。
这个技能把解题过程强制拆成七问循环,每一步都要交代因果;同时用目录契约和质量门,保证每次都能留下来一份「三个月后自己还看得懂、别人能照着重做」的文档。
展开完整文档(README 剩余 1 节)
🧩 ctf-solve-teach · 解题即教学
给 AI 用的技能:解 CTF 题时不许闷头算答案,必须边解边讲——这一步是什么套路、为什么用这个工具、背后的知识点是什么。
收尾自动在 solves/<题目名>/ 里产出可复现的完整 Writeup。
两种用法:作为 DSH 插件安装(装完技能自动出现在技能目录),或者把 skills/ctf-solve-teach/ 整个复制进任意智能体的技能目录。
dsh plugin add dsh-ctf-solve-teach # npm 包
dsh plugin add github:Wangxiaolu0716/ctf-solve-teach # 或直接从仓库装
解决什么问题
用 AI 做 CTF,最常见的两种失败:
1. 一口价答案。AI 三秒给出 flag,你抄完什么也没学到——下次换个皮还是不会。
2. 流水账 WP。过程很详细,但没有「为什么用这个工具」,也没有「这个机制为什么存在」,看完只会做这一道题。
这个技能把解题过程强制拆成七问循环,每一步都要交代因果;同时用目录契约和质量门,保证每次都能留下来一份「三个月后自己还看得懂、别人能照着重做」的文档。
三条硬承诺(技能内置约束)
| # | 约束 | 具体表现 |
| 1 | 不许黑箱 | 任何命令落地前先说:现象 → 判断属于哪类套路 → 为什么是这个工具 → 期望输出 |
| 2 | 知识点讲因果 | 不说「PNG 改宽高」,要说「IDAT 解压字节数 = (1+宽×通道)×高,所以能反推」 |
| 3 | 产物不外溢 | 所有中间文件都落在 solves/<题目名>/ 里,工作区根目录不许出现 out.png |
每一步长这样
① 现象:文件 1000 字节,file 说 data,前四字节 504b0304 —— PK 头 ② 判断:ZIP 被改后缀(套路:容器嵌套) ③ 工具:7z l —— 只列目录不动文件,比 unzip 容忍坏结构;备选 ctf zip 能同时看伪加密位,下一步用 ④ 执行:7z l chal.bin ⑤ 读结果:3 个条目,doc/flag.png 未加密、word.txt 加密 —— 伪加密/真加密分叉 ⑥ 知识点|ZIP 通用位标志
- 是什么:PK\x03\x04 后 offset 6 的 bit0 就是加密位
- 为什么在这:出题人改这一位就能让解压器喊"要密码",而数据没加密
- 怎么认:能列条能看 CRC,一解压就报密码错
- 坑:bit3 数据描述符会让 CRC 失效,爆破要改用明文前缀 ⑦ 下一步:先 --unpseudo 修伪加密;不成走明文攻击
产出物长这样
solves/真的假的/ ├── README.md ← 最终 Writeup(9 个必备章节) ├── 00-brief.md ← 题目情报卡:题面原文 / 附件 / flag 格式 / 初始假设 ├── journal.md ← 解题日志:每步七字段,含失败命令 ├── flag.txt ← 一行 flag ├── artifacts/ ← 原始附件只读副本 ├── work/ ← 解包产物、修复图、爆破日志 └── scripts/ ← 这次写的一次性脚本(别人能复跑)
solves/ 已写进 .gitignore:解题产物(flag、附件、他人题目内容)不会误提交。
README.md 的九个章节是质量门强制项(check_doc.py 会逐条查):
1. 题目情报 2. 一句话结论 3. 解题路径 4. 关键步骤复盘
5. 工具与用法清单 6. 知识点地图 7. 卡壳与弯路 8. 可复用脚本 9. 同类题迁移
其中 第 7 章「卡壳与弯路」 和 第 9 章「同类题迁移」 是最少见的章节,也是把「会做这道题」变成「会做这一类题」的关键。
安装
本仓库同时是 DSH 插件(npm 包 dsh-ctf-solve-teach)和 独立技能,按需选一种。
方式一:DSH 插件(推荐)
dsh plugin add dsh-ctf-solve-teach
或在插件市场里搜索任一关键词:
ctf 教学式 CTF writeup 网络安全 取证
装完重启 DSH,技能目录里直接出现 ctf-solve-teach,不用再手动放文件。
插件的工作方式:cordis.patch.yml 把插件插进配置档,插件启动时读包内的 skills/ctf-solve-teach/SKILL.md,调用 ctx.skills.register() 注册成 runtime skill,并把 references/ 与 scripts/ 作为 resourceBase 一起交出去——所以模型读到的是完整技能,相对路径也能正确解析到示例与脚本。
方式二:纯技能(不装插件,任何智能体通用)
git clone https://github.com/Wangxiaolu0716/ctf-solve-teach.git /tmp/cst
cp -r /tmp/cst/skills/ctf-solve-teach ~/.dsh/skills/
Claude Code 把目标换成 ~/.claude/skills/;其他智能体同理,只要它的技能目录认 SKILL.md。
方式三:本地开发
bash
git clone https://github.com/Wangxiaolu0716/ctf-solve-teach.git
cd ctf-solve-teach
node --test # 插件冒烟测试,4 条
npm pack --dry-run # 看会发布哪些文件
用法
装好之后不用记命令,直接用自然语言触发: text 帮我解一下这道杂项题,附件在 D:\ctf\chall.zip 这道流量分析题我的思路卡住了,边解边讲给我写个 wp,按教学向的那种
智能体会自动:建目录 → 建情报卡 → 逐步解题并讲解 → 收尾写 README → 跑质量门。
也可以手动调脚本 bash
建目录骨架(可带附件,会复制进 artifacts/)
python skills/ctf-solve-teach/scripts/new_solve.py "题目名" --src 附件或目录 --category misc
交付前自检
python skills/ctf-solve-teach/scripts/check_doc.py "solves/题目名"
new_solve.py 是幂等的:目录已存在时只补缺失文件,不会覆盖你写了一半的 README。
目录结构
ctf-solve-teach/ # npm 包 dsh-ctf-solve-teach ├── package.json # 包元数据,dsh.bundle.patch 指向下面的补丁 ├── cordis.patch.yml # 把插件插进 DSH profile 的 4 行补丁 ├── plugin/ │ └── index.js # 零依赖:读 SKILL.md → ctx.skills.register() ├── test/ │ └── smoke.test.mjs # 冒烟测试:解析/注册/卸载/frontmatter └── skills/ctf-solve-teach/ # ← 技能本体,可单独复制进任何 agent ├── SKILL.md # 三条承诺 + 七问循环 + 判型表 + 纪律 ├── references/ │ ├── triage.md # 60 秒判型决策树(按附件类型分流) │ ├── toolbox.md # 工具库:用途/命令/备选/何时别用 │ ├── knowledge-index.md # 知识点索引(ID 化,含深水区展开) │ └── writeup-template.md # README 模板 ├── scripts/ │ ├── new_solve.py # 建目录骨架 │ └── check_doc.py # 交付质量门 └── examples/ # 真实跑通、已过质量门的示例
插件是怎么工作的(60 行代码)
package.json 里的 dsh.bundle.patch 指向 cordis.patch.yml,DSH 安装时读这段补丁把插件挂进 profile: yaml
- insert:
- id: ctf-solve-teach
name: 'dsh-ctf-solve-teach'
config: {}
插件启动后只做三件事:读 SKILL.md、剥掉 frontmatter、调 ctx.skills.register()。
同一份内容在插件里注册一次,文件系统 provider 那边就不用再放一份——runtime skill 优先级高于 user 层。
设计原则
- 教学优先:宁可多花 30 秒解释工具选型,也不要快进到答案。
- 可复现:命令原样保留,路径相对化,脚本进 scripts/。
- 诚实:做不出来就写 PARTIAL: ...,并在"卡壳与弯路"里说清卡在哪。
- 不绑平台:判型表和工具箱按"能力"组织,本地工具(ctf CLI)只是示例,换环境照用。
A teaching-first CTF skill for AI agents. Instead of dumping the flag, the agent
narrates every step — what pattern this is, why this tool, what the underlying mechanism is — and finally writes a reproducible writeup into solves/<challenge-name>/ with a 9-section checklist enforced by check_doc.py.
Two install paths:
1. DSH plugin — npm package dsh-ctf-solve-teach. It ships cordis.patch.yml and registers the skill on ctx.skills at load time; nothing to copy by hand.
2. Plain skill — copy skills/ctf-solve-teach/ into your agent's skill folder (~/.dsh/skills/, ~/.claude/skills/, …).
Trigger with "solve this CTF challenge" or "teach me while solving".
License
MIT © Wangxiaolu0716预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
Wangxiaolu0716/ctf-solve-teach
边解 CTF 题边讲套路与知识点,自动生成可复现 Writeup
相关插件 · 技能 / 提示词
人设统管ZiChuanLan/agent-purge
一份系统提示词,喂给多个 coding…
★ 931已汉化DSH
73.8
人物画像蒸馏titanwings/distilly
Distilly — 把他们的思考方式提炼成可复用的技能,供任何智能体或机器人使用。原名 Colleague Skill(原同事 Skill)。
★ 25,659已汉化DSH
71.3
推理工作空间套件Tiger3807861189/J-Space-Cognition-Suite
J-Space 是面向复杂推理、大型仓库工程、子代理协作与授权安全分析的推理时工作空间和控制套件。
★ 2,957已汉化DSH
70.5
两阶段工具锚定预设xiaobright/dsh-anchored-standard
实验性 DeepSeek Harness agent preset…
★ 3,742已汉化DSH
70.1
智能体工作流编排nrslib/takt
不再日夜盯着 AI 编码智能体。
★ 1,402已汉化DSH
70
Agent 运行时手册Electricitysheep/dsh-handbook
DeepSeek Harness dsh 从 0 到 1 深度手册:安装/插件开发/性能调优/实测案例/同模型多…
★ 827已汉化DSH
68.7