如何看懂 AI 漏洞扫描结果?open·kritt 漏洞视图、Chips 与报告导出完全指南
【免费下载链接】open-krittOpen-source, self-hosted AI vulnerability research tool that orchestrates agents to find and validate security issues in code.项目地址: https://gitcode.com/gh_mirrors/op/open-kritt
跑完一次 AI 漏洞扫描后,屏幕上的结果该从哪里看起?open·kritt是一个开源、可自托管的 AI 漏洞研究平台,它编排多个 AI Agent 对代码仓库进行安全分析,最终产出去重、排序、可验证的漏洞结果(findings)。本文将带你从扫描列表一路走到单条漏洞的完整细节,搞懂漏洞视图(Vulnerability View)、Chips 标签、报告/PoC 页签,以及如何一键导出分享安全的报告压缩包。
一、从扫描列表进入结果页面
扫描一旦启动,你可以通过Overview 仪表盘或Scans 列表进入具体扫描。打开某次扫描后,你会看到四块关键信息:
| 区域 | 你能看到什么 |
|---|---|
| Header | 目标仓库(远程/本地徽章)、所用工作流、模型、harness、思考力度、commit |
| Stats | 漏洞总数、已确认可利用的数量、主 post-script、使用的 agent skill 数 |
| Status | 实时状态徽章(如running、post_processing、completed)以及暂停、恢复、导出操作 |
| Findings | 按你设定的排序规则排好的漏洞列表,并带有 post-script 生成的 Chips 标签 |
💡 小贴士:漏洞是边跑边出的——不必等扫描进入completed,就能先对已产出的结果开始分诊(triage)。
二、读懂单条漏洞视图(Vulnerability View)
点击列表中的任意一条结果,即打开它的漏洞视图。页面标题就是该结果的summary(摘要),顶部是关键的"状态条":
- Severity(严重级别)—— 来自 post-script 的
severity输出,未评级时显示 "Unrated" - Malicious actor(恶意角色)—— 谁能触发这个问题
- File(位置)——
file_path和line - Vulnerability type(类型)—— 分类后的漏洞类别,如 SQL 注入、XSS 等
内容区由若干**页签(Tabs)**组成:
| 页签 | 出现条件 | 内容 |
|---|---|---|
| Overview | 始终存在 | 解释说明、位置、攻击路径(trigger_flow)、恶意输入示例、评论 |
| Report | post-script 输出了_reserved_report键 | 一份完整的 Markdown 格式漏洞报告 |
| PoC | post-script 输出了_reserved_poc键 | 可复现的漏洞利用步骤 |
| Post-script | 有其它输出键 | severity、CVSS、CWE 等字段化展示 |
所有漏洞共享同一套固定结构(finding schema):summary、explanation、vulnerability_type、file_path、line、trigger_flow、malicious_input_example、malicious_actor以及可选的exploitable。正是这种一致性让每条漏洞都能被 post-script 和 ranker 统一处理与比较。
团队协作时,你还可以把某条结果标记为"interesting(值得关注)"或"not interesting",并留下评论——处理长清单时非常实用。
📚 文档参考:vulnerability-view.mdx、how-to-view.mdx
三、Chips:不点开也能扫一眼的关键值
Chip是出现在漏洞列表行内的小标签,让 post-script 把"扫一眼就知道"的关键值(CVSS 分数、可利用性结论、CWE 编号等)直接展示出来,无需点开详情。
它的规则很简单:
- post-script 中任何以
_chip_开头的输出键都会变成 chip,前缀后的文字就是标签名 - 例如输出
_chip_cvss: "9.1"、_chip_exploitable: "yes"、_chip_cwe: "CWE-89",列表里就会渲染出cvss 9.1、exploitable yes、cwe CWE-89三个 chip - 每条漏洞最多展示3 个chip,宽度受限,悬停可看完整值
- 主 post-script 和所有补充 post-script 都能贡献 chip,可以叠加使用
💡 建议:chip 的值要短,只放可快速扫读的信息;长篇内容请放进普通输出键或 Report 里。
📚 文档参考:chips.mdx、reserved-post-scripts.mdx
四、报告导出:一键打包,分享安全
当你想把自己发现的漏洞交给团队或客户时,扫描详情页上的Export findings按钮可以把整个结果打包成一个ZIP 归档下载。
导出包的结构清晰、开箱即读:
- README.md—— 总览表格:排名、严重级别、每条 finding 的链接,以及是否有 Report/PoC
- manifest.json—— **分享安全(share-safe)**的索引,有意省略了仓库完整地址、扫描配置、提示词、模型设置等敏感信息
- finding-XX-<摘要>/—— 每条漏洞一个目录,内含:
finding.md—— 人类可读的完整说明finding.json—— 完整结构化数据post-processing.json—— 所有 post-script 的处理结果report.txt/poc.txt—— 当存在_reserved_report/_reserved_poc时导出
几个值得知道的行为细节:
- 仅
completed、stopped、failed状态的扫描可导出;未完成但有结果的扫描会生成明确标注 partial(部分)的导出 - Report 与 PoC 内容可能受被扫描仓库影响,因此以纯文本形式保存,防止其中夹带的格式控制被当作指令渲染
- 导出有体积与条数上限(如单次最多 500 条 finding、单文件 8 MiB 等),超出会给出明确错误
- 纯终端环境可用
./kritt-headless scan export <id>完成同样的导出
📚 实现参考:findingExport.js、ScanDetail.jsx、headless-cli.mdx
五、用排序规则(Ranker)决定"先看哪条"
扫描页上的漏洞顺序由你为该扫描设定的**严重级别排序规则(severity ranker)**决定——优先级最高的结果永远排在最上面。配合 Chips 和漏洞视图,你就形成了一条完整的阅读动线:
- 列表:按 ranker 排序 + Chips 快速扫读全貌
- 视图:点开关注项,看状态条、Overview 与攻击路径
- 报告:核对 Report 页签与 PoC 复现步骤
- 导出:打包成分享安全的 ZIP 交付
从看懂一条漏洞到导出整份报告,open·kritt 把 AI 的非确定性输出沉淀成了结构统一、可验证、可交付的安全研究结果。上手试试你的第一次完整分诊流程吧!
【免费下载链接】open-krittOpen-source, self-hosted AI vulnerability research tool that orchestrates agents to find and validate security issues in code.项目地址: https://gitcode.com/gh_mirrors/op/open-kritt
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考