网站漏洞扫描工具自动评分把人工判断项压成低分时怎样处理

📍 WDQWDWQD987AAAAA:216.73.217.169
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /dc47574a94cb.html
📄

网站漏洞扫描工具自动评分把人工判断项压成低分时怎样处理

自动评分把人工判断项压成低分,通常不是工具“判错了”,而是它只能对可枚举的信号打分:能匹配到的版本、能识别的响应特征、能归类的配置项。人工判断项往往缺少稳定特征,于是被归入低风险、信息不足或直接忽略。处理的关键不是调高总分,而是把这类项从评分体系中拆出来,单独建立可核对的证据链,再决定是否进入修复排期。

先分清两种相反的解释

同一份报告里,人工判断项得低分,可能来自两种完全不同的原因,处理方式相反。

两种解释都会表现为低分,但前者需要补探测,后者需要换验证方式。把它们混在一起,就会出现在“调低阈值”和“直接忽略”之间反复摇摆。

用可核对的证据区分两者

区分办法是看同一目标在改变输入后,工具输出是否发生可解释的变化。可以按下面顺序做一次小规模核对。

  1. 记录该项在报告中的原始证据:请求路径、参数、响应状态、响应长度、匹配到的特征串。这些字段是否完整,决定后续能否复核。
  2. 对同一路径做一次受控变更:例如把参数换成一个明显越界的值,或用一个已知无权限的账号访问。变更后重新扫描同一范围。
  3. 比较两次结果。如果评分和证据都随之变化,说明工具能感知该维度,低分更接近“当前未触发”,属于解释一;如果两次输出几乎一致,且证据字段始终是通用响应,说明该维度不在评分模型内,属于解释二。

这个核对不依赖具体品牌。不同工具的字段命名和导出格式不同,具体入口和字段含义需要以你所用工具的当前版本文档为准。

把人工判断项移出总分,改成状态标记

确认属于解释二后,实际动作是停止用总分代表这类项的状态。可行做法是给每个此类项打三个标记之一:已验证存在、已验证不存在、无法验证,并附上验证时使用的账号角色、前置操作步骤和观察到的差异。

这一步的结果会直接改变下一步:只有已验证存在进入修复排期;无法验证进入人工复测队列,而不是留在低分池里被反复忽略;已验证不存在则记录验证条件,避免下次扫描又把它当新问题报出来。总分仍然可以用于跟踪可枚举项的趋势,但不再承担判断人工项的责任。

一个注明假设的短例子

假设某工具报告里有一条“订单状态可被非授权修改”,风险分为低。第一次核对时用普通账号直接请求修改接口,返回统一拒绝页,证据字段只有状态码和通用页面,评分不变。这提示属于解释二。随后用两个账号构造“先创建待支付订单,再在另一会话中修改归属”的步骤,观察到订单归属发生变化。已验证存在被记录,该项从低分池移入修复排期。若第二步没有观察到变化,则记为无法验证,需要补充业务前置条件后再测,而不是据此判定安全。

需要保留的适用条件

这套做法适用于人工判断项占比较高的场景,例如涉及多角色、多步骤、业务规则的检查。若目标以版本缺失、配置暴露这类可枚举项为主,自动评分本身就有较高参考价值,不必整体拆出。另外,请求量或抓取量下降、某项统计归零,都不能单独证明处理正确,它们也可能是扫描范围缩小、认证失效或目标不可达造成的,需要结合证据字段一起看。具体工具的评分维度、字段名称和导出能力,以你实际使用的版本为准。

图1 图2

nginx