同一目标用不同网站漏洞扫描工具,或同一工具换参数、换时间扫描,结果往往对不上。差异不等于某次扫描“错了”,多数情况是扫描范围、请求方式、登录状态、规则库和判定阈值不同。解读时先判断差异属于“同一问题不同表现”还是“不同问题被合并”,再决定是否返工。
拿到两份报告不要急着合并。按下面顺序对照,能排除大部分假差异:
如果两份报告连目标 URL 都不一致,先统一目标,再谈差异,否则对比没有意义。
多人协作中最常见的返工,是 A 工具没报某路径,就认为该路径安全,交付时被 B 工具的结果推翻。没报至少有两种解释:一是确实不存在该问题;二是扫描器没有发现入口,比如链接藏在 JavaScript 里、需要特定参数才触发、被 WAF 拦截后返回了统一页面。前者是结论,后者只是未覆盖。
判断方法很简单:把“没报”的路径手动访问一次,记录状态码、响应长度和关键内容,再和扫描器的请求记录比对。如果手动能访问而扫描器没记录,问题在爬取或拦截,不在漏洞本身。
差异条目不要只写“A 报了 B 没报”,要留下能复现的最小证据。建议每条差异记录以下字段:
例如,假设工具 A 报告 /backup.zip 可下载,工具 B 未报告。手动请求后若返回 200 且内容为压缩包,则 A 的结论成立,B 属于漏报;若返回 403 或登录页,则差异来自访问上下文,需要补齐 Cookie 后重扫再判断。这里的状态码和内容是判断依据,不是对任何具体工具的结论。
交付文档里,差异说明要能让他人独立复核,而不是只给结论。可以按“已定位的原因”和“可能原因”分开写:已经通过手动请求确认的,写进已定位;仅凭报告推测的,标为待验证。这样接手的人知道哪些可以直接修,哪些还要再测。
减少返工的关键是统一基线:同一项目固定目标范围、登录方式、扫描配置和记录格式。换工具或换人时,先跑一次基线对比,确认差异来自工具还是来自目标本身变化。具体工具的功能、规则库和授权方式会变动,使用前应核对官方文档和当前版本说明。
下一步:挑出本次报告中差异最大的三条,按上面的字段各补一份最小复现记录,再决定是修漏洞、调配置还是补扫描范围。