pentest-blackboard
Skill19 starsChanged 2 months agoApache-2.0View on GitHub
CyberStrikeAI 项目黑板:跨会话 Fact 图(SQLite)+ upsert_project_fact/record_vulnerability 边渗透边记录节奏、关系边 links、confidence、与多代理协调落库。Use when managing project facts, blackboard index, writing evidence, or avoiding context-loss after compression.
2 other projects use a version of this, 2 of them edited.
Adopted by
Most recently taken up by
- AIPentest/CyberStrikeAIedited, first seen Nov 3, 2026
- Ed1s0nZ/CyberStrikeAIedited, first seen Nov 3, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 2
- AIPentest/CyberStrikeAI★ 8.5k96% same
- Ed1s0nZ/CyberStrikeAI★ 8.5k96% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository25 other files it gives its agents.
- active-directory-attackSkill
- ai-llm-app-attackSkill
- attack-surface-reconSkill
- binary-mobile-reversingSkill
- blockchain-contract-attackSkill
- capability-primitive-searchSkill
- cloud-attack-methodsSkill
- component-vuln-intelSkill
- cyberstrike-eino-demoSkill
- experience-closeoutSkill
- handoff-persistence-c2Skill
- initial-access-phishingSkill
- local-corpus-cveSkill
- pentest-agent-osSkill
- pentest-output-standardsSkill
- pentest-verificationSkill
- post-exploitationSkill
- proxy-tool-bootstrapSkill
- redteam-opsecSkill
- source-code-huntingSkill
- specialized-attack-playbooksSkill
- unlimited-attack-scopeSkill
- web-attack-methodsSkill
- wireless-hardware-attackSkill
- zero-day-discoverySkill
The file
Files
项目黑板(与本产品对齐)
状态落在已绑定项目的 SQLite 黑板,不依赖对话上下文,也不使用
.pentest/目录。 系统自动注入「项目黑板索引」(仅fact_key+ summary);摘要不足必须get_project_fact,禁止凭摘要臆造细节。
与经验总结的分工
- 本项目可复现上下文 → 只写黑板 / 漏洞库
- 跨项目可复用的检测顺序 → 不要在会话里写 SKILL.md;收尾见 experience-closeout
- 系统可能在可交付完成后生成经验草稿;未批准前 skills/ 不会变
原语与分工(产品模型)
| 概念 | 产品落点 | 规则 |
| Fact | project_facts(upsert_project_fact) | 同 fact_key 覆盖更新;非正式漏洞条目。confidence: confirmed | tentative | deprecated |
| 关系边 | project_fact_edges(upsert 的 links) | 结构化攻击图;finding/chain/exploit/poc 必须带 links |
| 可交付漏洞 | record_vulnerability | 与 Fact 可各记一次:Fact=复现上下文,漏洞=正式 finding |
| 探索方向 | 本轮计划 / 协调者委派 / plantask(若启用) | 不是独立 Intent 表;待验证方向用 confidence=tentative 的 note/ 或先不落库、验证后再写 |
| 人类注入 | 用户消息 / HITL 审批 | 直接吸收进决策;不必写成 Hint 原语 |
Fact vs 漏洞
- 环境/目标/认证等认知 → 只写 Fact(
target/auth/infra/business/) - 发现与利用上下文 → Fact(
finding/chain/exploit/poc/)+ body 填满攻击链 - 可交付 findings →
record_vulnerability(标题、严重程度、类型、目标、POC、影响、修复);记前可用list_vulnerabilities查重
强制节奏:边渗透边记录
勿等会话结束再批量写入。
- 每确认一条新认知(开放端口/服务版本、入口路径、认证态或凭据特征、可利用点或攻击面变化)→ 立即
upsert_project_fact(同 key 覆盖)。 - 每验证出一条可复现漏洞(含 POC/影响)→ 立即
record_vulnerability;与事实可各记一次。 - 继续下一步前优先落库,避免上下文压缩丢细节。
- 未绑项目:说明无法写黑板,仍在本轮保留证据摘要。
- 协调者:子任务返回新认知/漏洞时由协调者写入,勿假定子代理已记。
- 子代理无工具时:交付物末尾给「待落库」条目(建议
fact_key、summary、body/POC 要点),供协调者立即写入。
工具速查
| 工具 | 用途 |
upsert_project_fact | 写入/更新事实(含 body、confidence、links) |
get_project_fact | 按 key 取完整 body(索引不够时必调) |
list_project_facts / search_project_facts | 检索黑板 |
deprecate_project_fact / restore_project_fact | 误报废弃 / 恢复 |
record_vulnerability | 可交付漏洞 |
list_vulnerabilities / get_vulnerability | 查重与详情 |
前置:当前对话已绑定项目(否则工具报错)。
写入规范
fact_key / category
- 格式:小写
category/slug(如target/primary_domain、finding/sqli-login) - 环境:
target|auth|infra|business - 发现利用:
finding|chain|exploit|poc(另可用note) - 同一发现保持同一
fact_key覆盖,勿拆成多个 key 导致上下文丢失
summary / body / confidence
- summary(索引用一行):须含「什么 + 在哪 + 如何触发/验证」,禁止只写「存在 SQLi」
- body:完整可复现上下文(索引不含 body)。发现/利用类必含:入口 → 步骤 → 原始请求/响应或命令 → 现象 → 证据 →
related_vulnerability_id(若有) - confidence:有证据钉死 →
confirmed;仅线索/待验证 →tentative;误报 →deprecate_project_fact(或deprecated) - 更新时若省略 body,保留库中已有 body(可只改 summary)
关系边 links(写入 finding/chain/exploit/poc 时必填)
- 推荐
from:来源 fact → 当前fact_key - 最少:finding 至少 1 条
{from: target/*, type: discovered_on};在 finding 上挂 exploit 用{from: exploit/*, type: exploits} - 常用 type:
discovered_on|depends_on|leads_to|enables|exploits|contains|part_of|supports - 省略 links = 保留已有边;传入 links = 替换全部入边
工作方式(对齐本产品编排)
不设 Bootstrap/Reason/Explore 磁盘状态机。按当前运行模式推进,但读写黑板的纪律不变:
| 模式 | 黑板用法 |
| 单代理 / deep | 边干边 upsert_project_fact;读索引不够则 get_project_fact |
| plan_execute | 计划步骤产出认知后立即落库;重规划前 list/search_project_facts |
| supervisor | 协调者汇总子代理「待落库」并写入;子代理无工具则结构化交付 |
卡住时:换边/换起点/换攻击域;用 search_project_facts 重审已有 Fact,避免重复死路。负结果也要落库(见验证铁律 skill)。
行为触发器(纪律)
每步必检(不检=违反验证铁律):
- 识别→搜(本地优先,0 命中完整回退):识别任何组件/框架/版本/中间件 → 暂停利用 → 先
skill local-corpus-cve+zvec_grep_search查本机近 5 年 CVE 语料 → 有命中记tentativeFact 并核对版本(要利用时先查本地实战 POC 层,再按 CVE-ID 定向外网);本地 0 命中 → 完整执行component-vuln-intel的外网序列(与原版一致,一步不少,本地只是加速层不是截断层) → 搜完才继续。不搜就说「无已知漏洞」=幻觉;验证后再confirmed/record_vulnerability。 - 拒绝→换路:收到 403/429/超时/RST/WAF 拦/CDN 502/限流/空响应 → 禁止同条件重试 → 立即换路序列:SOCKS5 代理→换 UA→加 XFF→换协议(WS/DNS)→换端口→编码变异(完整代理获取/验证见
proxy-tool-bootstrap)→ 全换仍不通才写负结果 Fact(confirmed+ body 写清已测条件)换面。 - 新认知→横向:拿到凭据/域名/IP/路径 → 立即横向喷:凭据全服务复用 / 新域名全端口扫 / IP 反查同站 → 不等人指示自动扩展攻击面,并
upsert_project_fact(如auth/cred-*、target/related-*)。有凭据不喷=遗漏。
违反判定:不搜就说「无已知漏洞」=幻觉;被拦不换路=放弃;有凭据不喷=遗漏 → 均违反验证铁律。
证据 / 战利品 / 改动
| 原「磁盘」概念 | 本产品做法 |
| evidence/ | Fact body + record_vulnerability 的证明字段 + 工具执行记录;大文件放会话/项目 workspace |
| loot/ | 凭据特征写入 auth/ Fact(注意脱敏与授权范围);完整秘密按项目策略处理 |
| changelog.md | 写入型改动在回复中台账化,并可 note/change-* Fact 记录主机/类型/位置/回滚命令 |
与验证铁律的衔接
详见 pentest-verification:搜索≠漏洞;无证据不写 confirmed;禁止空泛「可能/疑似」当结论;验证失败写负结果 Fact。
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

