Webshell查杀脚本,批量扫描网站目录木马

当网站出现异常跳转、莫名文件或搜索引擎提示风险时,通常意味着目录中可能被上传了 Webshell。
本文围绕 Webshell查杀脚本,批量扫描网站目录木马这一需求,给出一套零基础也能照着做的脚本方案。
读完你可以完成从环境确认、脚本编写、批量扫描到结果验证的完整流程。

查杀前的环境确认与备份

动手之前先确认服务器能正常执行 Shell 脚本,并保留一份可回滚的备份,避免扫描或清理时误伤正常业务文件。

  • 确认系统已安装 bash、find、grep 等基础工具,绝大多数 Linux 发行版默认自带。
  • 找到网站根目录,例如宝塔面板常见路径为 /www/wwwroot/你的域名,LNMP 环境可能是 /home/wwwroot/你的域名。
  • 执行 tar -czf /root/www_backup.tar.gz /www/wwwroot 对网站目录做一次压缩备份,确认备份文件存在后再继续。
  • 记录当前网站访问是否正常,方便扫描后对比验证。

这里强调一个判断条件:如果网站正在被攻击或文件持续变动,建议先临时关闭写入权限或切换维护模式,再执行扫描,否则结果可能不准确。

编写批量扫描 Webshell 的脚本

新建脚本文件,例如 /root/scan_webshell.sh,内容如下。
脚本思路是:遍历指定目录,按常见木马特征字符串和可疑文件扩展名进行匹配,输出可疑文件路径。

#!/bin/bash
# Webshell 批量扫描脚本
SCAN_DIR="/www/wwwroot"
LOG_FILE="/root/scan_result_$(date +%Y%m%d%H%M).log"

# 常见 Webshell 特征关键词
PATTERNS="eval\(|assert\(|base64_decode|gzinflate|str_rot13|\$_(POST|GET|REQUEST)\[|preg_replace.*\/e|system\(|exec\(|shell_exec\("

# 常见可疑扩展名
EXTENSIONS="php|php5|phtml|jsp|asp|aspx"

echo "扫描开始:$(date)" | tee -a "$LOG_FILE"

find "$SCAN_DIR" -type f -regextype posix-extended -regex ".*\.($EXTENSIONS)$" | while read -r file; do
  if grep -Eqi "$PATTERNS" "$file"; then
    echo "可疑文件:$file" | tee -a "$LOG_FILE"
  fi
done

echo "扫描结束:$(date)" | tee -a "$LOG_FILE"
echo "结果已保存到 $LOG_FILE"

保存后赋予执行权限:chmod +x /root/scan_webshell.sh。
注意脚本中的 SCAN_DIR 要改成你自己的网站根目录。

执行扫描与结果确认

直接运行脚本:bash /root/scan_webshell.sh。
扫描时间取决于文件数量,几万文件的站点可能需要几分钟。

扫描完成后,用 cat /root/scan_result_*.log 查看结果。
对于列出的可疑文件,不要立刻删除,先做人工确认:

  • 用 ls -l 查看文件修改时间,近期被改动的文件风险更高。
  • 用 head -n 20 文件路径 查看开头代码,判断是否为正常业务逻辑。
  • 可以搜索文件内是否包含 eval($_POST 这类一句话木马特征,确认后再处理。

验证标准: 如果扫描结果为空,且网站访问正常、无异常进程,说明当前未发现明显木马;
如果发现可疑文件,建议先隔离到 /root/quarantine 目录,观察网站是否报错,再决定是否彻底删除。

避坑与后续加固

  • 不要把正常使用 eval 或 base64_decode 的框架文件误判为木马,务必人工复核。
  • 扫描脚本本身不会清除木马,只负责定位,清理前一定要保留备份。
  • 如果网站目录权限为 www:www,建议用 sudo -u www bash 脚本 执行,避免权限不足漏扫。
  • 查杀后建议检查计划任务 crontab -l 和异常进程 ps aux,防止木马留有后门。

一个常见疑问: 扫描脚本能否替代专业安全软件?
不能完全替代,但适合快速排查和应急定位。另一个判断条件: 如果同一目录反复出现木马,需要检查上传接口和 CMS 漏洞,而不是只删文件。

完成以上步骤后,你可以定期用该脚本做批量扫描,配合权限收紧和日志审计,降低网站被再次植入木马的风险。

分享到:
上一篇
高防IP切换测试,模拟攻击验证清洗效果
下一篇
网站被黑之后账号重置,全部后台密码修改
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意