首页
/ Hacker101项目:如何撰写优质问题报告及使用CVSS评分系统

Hacker101项目:如何撰写优质问题报告及使用CVSS评分系统

2025-07-06 02:16:35作者:袁立春Spencer

前言

在网络安全领域,发现问题只是第一步,如何清晰有效地向企业或组织报告问题同样至关重要。本文将详细介绍如何撰写高质量的问题报告,并深入解析CVSS(通用问题评分系统)的使用方法,帮助安全研究人员提升报告质量。

问题报告的核心要素

一份优秀的报告应当包含以下关键组成部分:

  1. 标题:简明扼要地描述问题位置、类型和影响
  2. CWE标识:准确分类问题类型
  3. CVSS评分:客观评估问题严重程度
  4. 复现步骤:清晰详细的问题重现方法
  5. 影响说明:阐述问题可能造成的后果

报告的质量不在于长度,而在于信息密度和可操作性。良好的格式和结构能显著提升安全团队的响应效率。

如何撰写有效的报告标题

标题是安全团队优先处理报告的重要依据。一个好的标题应当:

  • 控制在140个字符以内
  • 包含问题位置(网站/端点)
  • 明确问题类型
  • 简要说明潜在影响

优秀标题示例

  • 通过user_archive ExportCsvFile中的用户名实现管理员命令注入
  • app.acme.org上profile.php中的存储型XSS通过用户签名导致账户接管
  • 通过批量客户更新优先级产品实现kitcrm远程代码执行

CWE与CVSS详解

CWE(通用缺陷枚举)

CWE是社区维护的软件安全缺陷分类标准,它提供了:

  • 统一的问题描述语言
  • 安全工具评估基准
  • 弱点识别和缓解的基础框架

选择正确的CWE标识有助于准确分类问题并理解其潜在影响。

CVSS(通用问题评分系统)

CVSS通过8个维度评估问题严重程度:

  1. 攻击途径(AV):评估攻击者可利用问题的物理/逻辑距离

    • 网络(Internet)
    • 相邻(同一内网)
    • 本地(操作系统层面)
    • 物理(直接接触设备)
  2. 攻击复杂度(AC):衡量成功利用问题所需的条件

    • 是否需要特定配置
    • 是否需要不可猜测的ID
    • 是否需要有效凭证
  3. 所需权限(PR):评估攻击者需要的权限级别

    • 无权限
    • 低权限(普通用户)
    • 高权限(管理员)
  4. 用户交互(UI):判断是否需要用户参与

    • 无需交互
    • 需要用户操作
  5. 影响范围(S):问题是否影响其他组件

    • 未改变(仅影响问题组件)
    • 已改变(影响其他组件)
  6. 机密性影响(C):评估信息泄露风险

  7. 完整性影响(I):评估数据篡改风险

  8. 可用性影响(A):评估服务中断风险

CVSS评分实例分析

案例1:存储型XSS(认证用户向未认证用户)

  • 攻击途径:网络
  • 攻击复杂度:低
  • 所需权限:无/低(取决于是否需要认证)
  • 用户交互:视情况而定
  • 影响范围:已改变(服务器→浏览器)
  • 机密性影响:低/无(取决于DOM访问)
  • 完整性影响:低(可导致页面篡改)
  • 可用性影响:无

案例2:管理员向用户的存储型XSS

  • 所需权限:高(需要管理员权限)
  • 其他参数与案例1类似

案例3:可读写PII的IDOR问题

  • 攻击复杂度:高(使用UUID时)/低(使用顺序ID时)
  • 机密性影响:高(涉及PII)
  • 完整性影响:高(可修改数据)

案例4:SSRF问题

  • 影响范围:视情况而定
    • 未改变(本地端口扫描)
    • 已改变(AWS或本地文件泄露)
  • 机密性影响:取决于输出内容
  • 完整性影响:高(可能导致RCE)

编写高质量的复现步骤

复现步骤是报告的核心部分,应当:

  1. 从零开始详细描述每个操作
  2. 包含必要的HTTP请求和响应(文本格式)
  3. 说明认证要求及获取方式
  4. 提供完整的问题利用链

优秀实践

  • 描述如何导航到问题页面
  • 包含具体的请求参数
  • 展示预期的响应结果
  • 提供可复制的PoC代码

撰写有效的问题影响说明

影响说明应当:

  • 设想最坏情况的利用场景
  • 量化潜在损害
  • 说明受影响的数据或系统
  • 评估业务连续性风险

示例:"此SSRF问题可能允许攻击者访问AWS元数据服务,获取敏感凭证,最终导致整个云环境沦陷。"

总结

撰写优质报告是一门需要不断练习的技能。通过:

  1. 使用清晰简洁的标题
  2. 准确应用CWE/CVSS
  3. 提供详细的复现步骤
  4. 全面分析潜在影响

不仅能提高报告被接受的概率,还能加速修复流程,最终为提升整体网络安全做出贡献。记住,好的报告是安全研究人员与厂商之间高效沟通的桥梁。