网站木马扫描的阶段性交付物,不是一份“扫完就出报告”的文档,而是围绕证据链分阶段产出的可核对记录。常见误解是:一次扫描命令跑完,输出一个“发现X个可疑文件”的结果,就算交付完成。问题在于,木马扫描本身会产生大量误报,且不同扫描方式(特征匹配、文件完整性比对、流量日志分析)覆盖的范围不同。如果只交付一个最终结论,后续无法判断哪些是已确认的威胁、哪些只是可疑、哪些需要人工复核。因此,交付物应当按“采集—分析—验证—处置建议”四个阶段拆开,每阶段留下可追溯的记录。
这一阶段的交付物是扫描范围清单和文件基线快照。没有基线,后续的“文件被篡改”判断就缺少参照。
md5sum 或 sha256sum 输出),并注明采集时间。交付物是可疑文件列表,但必须附带分类依据。常见做法是把结果分成三类:
eval($_POST、assert($_REQUEST 等。.php 文件)。判断结果:高置信度项可直接进入验证阶段;中置信度项需要结合访问日志确认是否被请求过;低置信度项应标记为“待人工复核”,不应直接删除。
这一阶段的交付物是逐项验证记录。对每个可疑文件,记录以下内容:
如果无法获取访问日志,验证记录中应注明“缺少日志证据,结论基于静态代码判断”,而不是直接断言为木马。一项可疑现象可能有多种解释,例如一个被混淆的 base64_decode 调用,可能是木马,也可能是某些插件为了压缩代码而做的正常处理。区分“可能原因”与“已经定位的原因”,是这一阶段交付物的核心要求。
交付物是处置建议清单和复扫条件说明。处置建议应逐项对应验证结论:
复扫计划需要写明触发条件,例如“处置完成后24小时内复扫一次”“新增上传目录后重新采集基线”。不要承诺固定见效时间,也不要把“扫描通过”等同于“网站已安全”。
如果资源有限,至少保留三样东西:一份带哈希值的扫描范围清单、一份带分类和证据的可疑文件列表、一份逐项处置建议。可以用以下命令生成基线记录:
find /var/www/html -type f -exec sha256sum {} \; > baseline_$(date +%Y%m%d).txt
执行后检查输出文件是否包含预期目录,排除缓存和日志目录。如果输出为空或权限报错,说明扫描范围设置有问题,应先修正范围再继续。
下一步:根据你网站的实际目录结构,先划定扫描范围并生成第一份基线快照,再运行扫描工具,把结果按上述四类交付物归档,而不是只保留一个最终报告。