不同网站漏洞扫描工具结果不一致,先不要急着判断谁对谁错。更有效的做法是把差异当成线索:先确认两次扫描的目标、入口、登录状态、扫描深度和时间是否一致,再对差异条目逐条复现。多数不一致来自扫描范围、请求方式、规则库和判定阈值不同,而不是网站真的忽好忽坏。时间和人手有限时,优先处理“两个以上工具都报、且能手工复现”的问题。
比较之前,先建立一张对照表,把两次扫描的可变因素列出来。要查的是:扫描目标 URL 是否完全相同,是否包含子域名或参数,是否登录、用什么身份登录,爬取深度和请求频率是否一致,扫描时间是同一时段还是相隔较久。
对齐条件后仍有差异的条目,按可复现性分类,而不是按工具名气排序。
要查的是:报告里的请求方法、参数、payload 和响应片段。怎么查:照着报告重放请求,观察状态码、响应体和页面变化。结果说明什么:能稳定复现的才进入修复队列,不能复现的先标记待观察。
不同工具的检测规则、插件版本和严重级别定义不同,同一个现象可能被一个工具标为高危,被另一个标为信息项。要查的是:各工具的规则更新时间、插件或模板版本,以及该条目的判定依据。
注意,具体工具当前有哪些规则、是否收费、免费额度多少,需要以该工具官方说明为准,不要凭旧印象判断。
按下面顺序安排,能最快收敛分歧:
判断标准很简单:能稳定复现且影响明确的先修;只有报告、没有证据的,不占用第一优先级。
对每条确认的问题,写一条最小复现记录:请求方法、URL、关键参数、使用的会话、预期现象和实际响应。这样下次换工具扫描时,可以直接拿这条记录去核对,而不是重新争论。
假设某工具报告某参数存在注入风险,另一个工具没有报告。你可以手动构造带特殊字符的请求,观察响应是否出现数据库报错或内容差异。如果稳定出现异常,就按真实问题处理;如果响应正常,就把该条目标记为待复核,并记录当时的请求和响应。这个例子只说明判断方法,不代表任何具体工具的检测能力。
下一步:选一个双方都报且能复现的条目,按上面的最小复现记录格式写下来,再决定修复优先级。