正确准备查询对象,核心是把“要扫什么”和“用什么扫”分开:先确定待扫描的目标清单,再为每个目标标注类型、范围和优先级,最后才把清单交给挂马扫描软件。直接扫描整个服务器或网站根目录,往往会把正常代码、缓存、备份和第三方组件混在一起,既浪费时间,也让结果难以判断。人手有限时,先处理对外可访问、最近有改动、已有异常表现的目标。
挂马扫描软件需要明确的输入对象。一个可扫描单元通常包括:单个域名或子域名、一个站点目录、一批页面URL、一个代码仓库,或者一台主机的Web目录。准备时不要只写“公司网站”这类模糊描述,而要落到具体路径或地址。
如果目标很多,先按“对外可访问”和“可写入”两个条件筛选。对外可访问且允许上传、评论、提交表单的入口,通常是优先扫描对象。
时间有限时,不要平均分配。先观察以下迹象,再决定把哪个对象排在前面:
这些现象只是线索,不是结论。比如页面跳转可能来自挂马,也可能来自错误的伪静态规则、被篡改的DNS解析或第三方统计脚本。把可能原因和已经定位的原因分开记录,避免一上来就删文件。
挂马扫描软件的结果依赖输入条件。准备查询对象时,至少写清四项:
例如,一个假设场景:某站点最近一周出现跳转,服务器上有备份。可以先准备“最近7天被修改的脚本文件”作为查询对象,而不是全站所有文件。这样扫描范围小,结果更容易人工复核。适用条件是备份时间早于异常出现时间;如果备份本身已被污染,这个基准就不可靠。
如果没有任何备份或版本库,查询对象应改为“对外可访问的脚本入口和上传目录”,并保留扫描前的文件清单与哈希值,便于后续复查。
把对象清单按以下顺序排列,通常比随机扫描更省人力:
每扫完一个对象,记录扫描时间、范围、工具名称与版本、发现的疑似文件路径。不要只记录“发现木马”四个字,否则复查时无法判断是否重复。对疑似文件,先隔离或改名,不要直接覆盖,保留原始样本用于比对。
处理完第一轮后,用以下检查项确认没有漏掉对象:
.htaccess、配置文件或计划任务。复查时,如果同一现象仍然存在,要重新判断原因:可能是清理不彻底,也可能是入口未修复,还可能是其他站点或第三方资源引入。把新发现的对象补充进清单,再执行下一轮扫描。
下一步,先列出你当前能访问的域名、目录和最近改动时间,形成一张扫描对象表;再根据异常现象标注优先级,然后才打开挂马扫描软件逐项执行。