mcpField
T
transilience-report-style

transilience-report-style

github.com/transilienceai文档处理598121 次安装13 周前更新
代码仓库

关于 transilience-report-style

将结构化发现数据转换为 Transilience 品牌 A4 PDF 的报告生成技能,适用于已完成验证的渗透测试、漏洞评估、网络扫描或合规项目。支持执行摘要版及 CSV、XML 导出,并可保留不呈现在客户 PDF 中的内部章节。

主要功能

  1. 01从 JSON 数据生成 A4 PDF
  2. 02呈现分级发现、CVSS、证据和整改
  3. 03支持亮色与暗色主题
  4. 04生成仅含执行摘要的版本
  5. 05导出 CSV 或 XML 发现清单
  6. 06支持报告修订与外部报告导入

适用场景

  1. 01为已验证的渗透测试发现制作交付报告
  2. 02生成便于广泛传阅的执行摘要版
  3. 03将发现清单导入漏洞管理系统
  4. 04修订或整合已有安全报告

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/transilienceai/communitytools --skill transilience-report-style

安装后在 Claude Code 中输入/transilience-report-style确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

reference/
example-report-data.json
generate_report.py
report-data-schema.json
test_generate_report.py

详细介绍

Transilience 报告样式

将结构化的发现项 JSON 转换为品牌化的 A4 PDF(默认使用浅色主题——现代、简约;--theme dark 可切换为深色主题;品牌渐变线、带框的代码/示例、带边框的截图、按颜色区分严重性和 CVSS 评分、发现项卡片、严重性指标)——这是 Transilience 的标准交付物。生成器由数据驱动:准备一个 JSON,运行一条命令。设计系统:formats/transilience-report-style/SKILL.md §0(主题/调色板)。

适用场景

  • 渗透测试/漏洞评估/网络扫描/合规项目已完成并验证,需要生成 PDF 交付物。
  • 已有发现项(最好已验证),包含严重性、CVSS、证据和修复建议。

使用方法(3 步)

  1. 编写 report_data.json,使其符合 reference/report-data-schema.json。只有 engagement 和 findings 是必填项;其他所有键(executive_summary、metrics、sections、cve_register、coverage_table、attack_pattern_coverage、ruled_out、tools_used、roadmap、disclaimer)均为可选章节,缺失时会跳过。请参阅 reference/example-report-data.json 中的最简可用文件。

    • 仅供内部使用的章节:sections[] 中带有 "internal": true 的条目会保留在 report_data.json 中(作为内部记录),但绝不会渲染到面向客户端的 PDF 中。可用于记录内部 QA 日志,例如盲验证/独立复现的判定表——这些内容不得出现在任何面向客户端的 PDF 中。
  2. 运行生成器:

    python3 reference/generate_report.py <report_data.json> -o reports/My-Report.pdf
    

    字体和徽标会从 formats/transilience-report-style/ 自动发现。如果在仓库外运行,可使用 --assets <dir> 指定资源目录。需要 reportlab(pip install reportlab)。

  3. **验证:**渲染一页(pdftoppm -png -r 100 -f 1 -l 1 out.pdf /tmp/p),并在交付前阅读检查。

同一数据的其他版本
  • 高管版——generate_report.py <data.json> --exec-only 会渲染封面、KPI 方框、叙述内容和路线图,不包含发现项详情或技术登记表,适合在安全团队之外传阅。KPI 计数仍反映整个项目。
  • 机器可读导出——python3 ../../tools/report_export.py <data.json> --format csv|xml -o findings.csv 会导出发现项登记表,供漏洞管理系统导入。与 PDF 登记表和 xlsx 中的行相同:同一数据的三种呈现形式。

渲染内容

封面(徽标、标题行、副标题、元数据)→ 执行摘要(根据严重性计数自动生成的 KPI 指标框+叙述内容+关键风险+正面发现)→ 自由格式的 sections(范围/方法论)→ 按严重性从严重到信息分组的发现项卡片(严重性横条、CVSS+向量、CWE/OWASP、状态、受影响对象、描述、影响、可选的概念验证区块——按顺序排列的步骤,每个步骤都包含说明文字、代码样式的命令和嵌入式截图、可选的严重性校准、可选的单项发现 CVE 表、修复建议)→ 可选的 CVE 登记表、覆盖范围表、攻击模式覆盖情况(按确定性规则生成的攻击面单元 × 攻击类别矩阵,状态按颜色区分)、排除项附录、所用工具与技术、修复路线图、免责声明。章节编号会自动分配。

Finding 对象(重要字段)

id, title, severity (Critical|High|Medium|Low|Info), cvss_score, cvss_vector, cwe, owasp, affected[], description, impact, recommendation + 可选的 poc[], calibration, needs_live_confirmation, cves[], attack[]。attack[] 携带 MITRE 技术 ID — ATT&CK(T1190, T1059.001),或者对于没有对应 ATT&CK 技术的 AI/LLM 漏洞发现,使用 ATLAS(AML.T0051);它会显示在 CWE/OWASP 旁边,并出现在每种导出格式中。poc 是按顺序排列的步骤列表 {description, command, image_url}(合并了原先的 evidence / poc_request / screenshot 字段):每个步骤会显示为带编号的文字描述、可选的代码样式命令,以及可选的嵌入式图片。PAN/Aadhaar/银行卡号等类似值会在渲染时进行防御性屏蔽 — 但仍应在源文本中删除真实机密/个人身份信息。

约定

  • 除非有意根据环境调整,否则严重性按 CVSS 分值区间设置(≥9 为 Critical,≥7 为 High,≥4 为 Medium,>0 为 Low,0 为 Info)— 在 calibration 字段中说明校准情况(参见 formats/transilience-report-style/pentest-report.md §7)。
  • 不使用表情符号;仅使用文字严重性标签。发现项的元数据使用字段表示,而非叙述文字。
  • 一个发现项对应一个已验证的问题。对系统性问题实例进行分组,而不是重复列出相似问题。

参考资料

评论

支持 Markdown