name: pentest-report description: 按照标准格式生成渗透测试报告,包含项目信息表、漏洞发现清单、漏洞详情(含属性表、描述、复现步骤、证据截图、修复建议)、附录(风险等级定义、CVSS说明、词汇表)。当用户要求生成渗透测试报告、安全测试报告、漏洞报告时使用此技能。严格遵循项目模板目录中的标准格式。
渗透测试报告生成技能
授权声明
本 Skill 仅用于生成授权渗透测试的报告。使用前请确保:
- 测试已获得目标系统所有者的明确书面授权
- 所有漏洞发现均来自合法授权的测试活动
- 报告仅发送给授权人员
- 遵守当地法律法规和数据保护要求
未经授权的渗透测试是非法行为。
技能用途
在以下情况下使用此技能:
- 用户要求生成渗透测试报告
- 用户要求输出安全测试结果
- 用户需要总结漏洞发现
- 用户明确提到"按格式生成报告"或"按照模板"
报告格式要求
必需章节
所有报告必须包含以下章节,按顺序排列:
标题和项目信息表
- 格式:
# 渗透测试报告:[目标系统名称/项目名称] - 包含 4 字段表格:测试目标、测试时间、测试人员、报告日期
- 格式:
漏洞发现清单 (Vulnerability Summary)
- 表格形式,包含列:ID、漏洞标题、风险等级、状态
- ID 格式:VL-001, VL-002, VL-003...
- 风险等级图标:🔴严重、🟠高危、🟡中危、🔵低危、⚪信息
漏洞详情 (Detailed Findings)
- 每个漏洞一个独立章节
- 章节标题:
### [VL-XXX] 漏洞标题 - 必须包含 4 个子章节:
#### 2.1 漏洞描述#### 2.2 复现步骤 (Proof of Concept)#### 2.3 证据截图#### 2.4 修复建议
附录 (Appendix)
### 3.1 风险等级定义- 风险等级表格### 3.2 CVSS 评分说明- CVSS v3.1 说明### 3.3 泄露凭证列表(如有)### 3.4 测试工具参考- 工具表格### 3.5 词汇表### 3.6 参考文档
报告签署
- 测试人员信息
- 免责声明
漏洞详情章节格式
每个漏洞章节必须以属性表格开始:
| 属性 | 详情 |
| :--- | :--- |
| **风险等级** | 🔴 **严重 (Critical)** / 🟠 **高危 (High)** / 🟡 **中危 (Medium)** / 🔵 **低危 (Low)** |
| **CVSS 评分** | 0.0 - 10.0 |
| **漏洞类型** | [漏洞类型] |
| **受影响URL** | `[完整URL]` |
| **参数** | `[参数名]`(如有)|
代码块格式
- HTTP 请求使用
http语言标识
POST /api/login HTTP/1.1
Host: example.com
Content-Type: application/json
{"username":"admin","password":"123456"}
- Bash 命令使用
bash语言标识
sqlmap -u "http://target.com" --dbs
- PHP 代码使用
php语言标识
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = ?");
$stmt->execute([$id]);
工作流程
生成渗透测试报告时遵循以下步骤:
步骤 1: 收集信息
从用户获取以下信息:
- 测试目标(URL 或系统名称)
- 测试日期范围
- 测试人员信息
- 发现的漏洞列表
- 每个漏洞的详细信息(类型、影响、证据、PoC)
步骤 2: 确定漏洞 ID
为每个漏洞分配 ID:
- 第一个漏洞:VL-001
- 第二个漏洞:VL-002
- 以此类推
步骤 3: 评估风险等级
根据 CVSS 评分确定风险等级:
| CVSS 范围 | 风险等级 | 图标 |
|---|---|---|
| 9.0 - 10.0 | 严重 (Critical) | 🔴 |
| 7.0 - 8.9 | 高危 (High) | 🟠 |
| 4.0 - 6.9 | 中危 (Medium) | 🟡 |
| 0.1 - 3.9 | 低危 (Low) | 🔵 |
| 0.0 | 信息 (Info) | ⚪ |
步骤 4: 生成报告主体
按以下顺序生成:
项目信息表 - 填充 4 个必需字段
漏洞发现清单 - 创建表格,包含所有漏洞的摘要信息
漏洞详情 - 为每个漏洞创建独立章节:
- 属性表格(风险等级、CVSS、类型、URL、参数)
- 2.1 漏洞描述(2-3 段,说明原理、影响、危害)
- 2.2 复现步骤(详细的步骤,包含 HTTP 请求和命令)
- 2.3 证据截图(占位符或描述)
- 2.4 修复建议(包含错误和正确代码示例)
附录 - 按模板包含所有必需子章节
步骤 5: 验证格式
生成报告后检查:
- 标题格式正确
- 项目信息表包含 4 个字段
- 漏洞发现清单包含 ID、标题、风险等级、状态
- 每个漏洞有属性表格
- 每个漏洞有 4 个子章节(2.1-2.4)
- 附录包含所有必需子章节
- 风险等级使用正确的图标
- 代码块使用正确的语言标识
步骤 6: 输出报告
将生成的报告保存到用户的 reports 目录:
/Users/huimingliao/Documents/code/pentest-skills/reports/
文件命名格式:
pentest_report_[目标系统]_[日期].md
重要注意事项
必须遵守的格式规则
- 表格格式:所有表格必须包含表头分隔行
| :--- | :--- | - 风险等级图标:必须使用指定的 emoji 图标
- 章节编号:严格遵守 2.1、2.2、2.3、2.4 的子章节编号
- 代码语言:所有代码块必须指定语言标识
- ID 格式:漏洞 ID 必须是 VL-XXX 格式,3 位数字
避免常见错误
❌ 不要省略附录章节 ❌ 不要混合使用不同的风险等级表示方式 ❌ 不要在属性表中缺少必需字段 ❌ 不要在复现步骤中省略 HTTP 请求示例 ❌ 不要在修复建议中只提供文字说明(必须包含代码示例)
✅ 每个漏洞必须包含完整的 4 个子章节 ✅ 修复建议必须包含代码对比(错误 vs 正确) ✅ 所有表格必须有正确的 Markdown 格式 ✅ 必须包含免责声明
模板资源位置
- 报告模板:
/Users/huimingliao/Documents/code/pentest-skills/templates/pentest_report_template.md - 参考报告:
/Users/huimingliao/Documents/code/pentest-skills/reports/pentest_report_localhost_9999_v2.md - 报告目录:
/Users/huimingliao/Documents/code/pentest-skills/reports/