结论先说:企业网站被挂马后,正确的第一步是把整站文件和数据库完整打包备份,不是删掉那段跳转代码。入口文件(webshell 或后门账号)通常不在首页里,只删表现等于把现场破坏掉,同一入口可以在一两天内重新写回。按「备份 → 断传播 → 改全部凭据 → 查日志定位入口 → 干净文件整体覆盖 → 加固与申诉」这六步走,多数企业站 24-48 小时能恢复访问,清理费用落在 800-5000 元区间,具体看站点规模和后门数量。
还有一个代价常被低估:挂马不只是访客被跳转到赌博站这么简单。百度会给被篡改的页面打风险提示,站点整体信任度下降,恢复访问之后排名通常还要 2-8 周才回得来。所以处置速度直接等于损失,发现当天动手和拖一周,结果完全是两回事。
一、先分辨:是被挂马,还是被入侵了后台
挂马和被入侵是两件事,处置范围不同,判断错了会漏掉入口。
挂马指攻击者在页面里插入脚本或链接,访客被跳转、被弹窗,网站本身功能还正常,文件里能搜到陌生的 script 外链或一段 base64 长串。被入侵指后台账号或服务器权限被拿走,表现为出现陌生管理员、文章被批量改标题、数据库里多出大量垃圾页面。两者经常同时发生:先用弱口令进后台,再上传后门,最后挂马引流。所以处置时不能只清页面,账号和权限必须一起处理。
下面五个自查点,命中任意一条基本可以确认:
- 百度或必应搜索结果里,站点标题下出现「该页面可能已被篡改」之类的安全提示;
- 从搜索结果点进来会跳转,直接输入网址却正常——这是按来源(referer)判断的脚本,专门躲站长;
- 手机流量访问正常、公司网络访问跳转,或者反过来——按 IP 或设备类型判断;
- 用 FTP 或面板看文件列表,出现自己没传过的
.php文件,修改时间集中在凌晨 1 点到 5 点; - 服务器 CPU 或带宽被跑满,但访问量没涨——站点被当成流量中转或挖矿节点。
最省事的验证方式:把首页源码另存下来,搜 http:// 开头的 script src,逐个核对自己有没有引用过。不认识的域名就是注入点。
二、六步处置:顺序错了会返工
处置顺序有硬性要求,备份必须排在删除之前,凭据更换必须排在清理之前,否则清完还会被重新写回。
| 顺序 | 动作 | 要点 | 常见错误 |
|---|---|---|---|
| 1 | 备份现场 | 整站文件打包 + 数据库导出,存到本地并记下发现时间 | 先删代码,入口线索全丢 |
| 2 | 断传播 | 目录权限改 444/555,或暂停域名解析,避免继续给访客跳转 | 直接删站,事后无法取证和比对 |
| 3 | 改凭据 | FTP/SFTP、SSH、数据库、后台管理员、域名 DNS、主机面板,全部换新 | 只改后台密码,FTP 仍是弱口令 |
| 4 | 定位入口 | 按修改时间倒序找最近改动文件,日志里搜 POST、eval、base64_decode | 只清首页,后门留在 uploads 目录 |
| 5 | 整体覆盖 | 用干净备份 + 官方最新版核心文件整体替换,插件逐个重装 | 手工逐个删文件,清不干净 |
| 6 | 加固申诉 | 补丁、权限、上传目录禁执行、WAF;再去搜索资源平台提交申诉 | 清完不做加固,两周内二次被黑 |
第 3 步容易被跳过,但它决定了会不会复发。攻击者拿到的是凭据,不是某一段代码,密码不换,清理完他照样能登录。凭据更换清单:主机面板、FTP/SFTP、SSH、数据库、网站后台超级管理员、域名注册商与 DNS 解析、以及所有绑过这些账号的邮箱。同时翻一遍后台用户列表和服务器定时任务,陌生账号和计划任务要删干净。
三、定位入口:日志里三类痕迹最有用
找入口靠日志和文件时间,不靠猜,90% 的入口能在半小时内定位到具体文件。
先按修改时间排序。Linux 主机执行 find ./ -type f -mtime -7 -name "*.php",虚拟主机就在面板的文件管理器里按时间排序。重点关注三个目录:上传目录(uploads、attachment)、缓存目录(cache、data)、以及 CMS 的插件目录。正常运营中这几个目录不该出现新的可执行文件。
再查访问日志。搜三个关键词:POST 且路径指向上传接口、返回码 200 的请求(说明传上去了);含 eval、base64_decode、assert 的请求;单位时间内同一 IP 高频访问 .php 路径。日志默认只保留 7-30 天,越早查越好,被覆盖就断了线索。
最后做一次全站关键词扫描。在文件内容里搜 eval(、base64_decode(、shell_exec、gzuncompress,正常的企业站业务代码里这些函数极少出现,命中基本就是后门。注意不要只看首页,真正的 webshell 通常就几行代码,藏在一个看似正常的图片目录里。
四、五类入口,七成问题出在第一类
企业站被挂马的入口高度集中,堵住前两类能防住大部分情况。
- CMS、插件、主题长期不升级。这是最主要的一类,公开漏洞一旦披露,自动化扫描工具会在几天内全网扫同版本站点。判断标准:后台看到版本号落后官方两个大版本以上,就已经在风险区。
- 弱口令。
admin配123456、FTP 密码与公司电话相同、数据库用默认root空密码。暴力破解工具对这类组合是秒破,不需要任何技术。 - 上传功能没做校验。留言附件、编辑器插图、简历上传,只判断了扩展名没判断文件内容,传一个改名成
.jpg的脚本就能执行。 - 破解版模板和插件自带后门。免费下载的付费主题里塞后门是常态,这类后门往往在主题更新后才生效,很难被发现。
- 同服务器其他站点被牵连。共享虚拟主机环境下,同 IP 另一个站被攻破,跨站读取目录就可能波及自己。这种情况自己查不出原因,要联系主机商确认同服务器状况。
顺带说一个现实问题:很多企业站是几年前外包做的,交付后没人维护,CMS 版本停留在上线那天,插件是当年下载的破解版。这种站的挂马不是「会不会」,而是「什么时候」。如果连后台账号都找不到人,建议直接评估重做,比反复清理划算——做 沈阳网站建设 时把「源码交付、后台账号归属、后续升级责任」写进合同,就能避免这个局面。
五、清理要花多少钱:四档区间与影响因素
清理费用取决于后门数量、站点规模和是否需要重做,不是按页面数量报价。
| 服务档位 | 做什么 | 价格区间 | 周期 |
|---|---|---|---|
| 应急清理 | 定位并清除后门与注入代码,恢复站点可访问 | 800-2000 元 | 1-2 天 |
| 清理 + 加固 + 申诉 | 在上一档基础上做权限、补丁、上传目录加固,代为提交搜索平台申诉 | 2000-5000 元 | 3-5 天 |
| 清理 + 全站重做 | 站点已无法确认干净,或 CMS 停更,改用新版程序重建并迁移内容 | 5000-20000 元 | 1-3 周 |
| 长期安全维护 | 每日异地备份、补丁跟进、月度扫描与日志巡检 | 每年 2000-8000 元 | 按年 |
影响报价的四个具体因素:后门数量(清出 3 个和清出 30 个工作量差几倍)、页面与插件规模(几千页的商城和老式企业站不是一个量级)、数据是否被改(文章和产品数据被批量篡改要人工核对)、以及是否需要重新备案或换服务器。让服务方先出一份「后门清单 + 处置方案」再报价,只报总价不给清单的,多半是在试运气。
如果站点本来就是定制开发的,处理起来会快一些,因为代码结构清楚、入口可追溯;这种情况下找原开发方或做 沈阳软件开发 的技术团队配合排查,通常一两天能定位。反过来说,如果站点的后台和小程序、APP 共用一套接口,服务端被入侵意味着客户端数据也可能被读取,小程序侧要同步改密钥、检查登录态,这块找做 沈阳小程序开发 的服务方一起处理,别只修网站。
六、搜索引擎这一关:提示多久消失,怎么申诉
站点清理干净不等于搜索结果里的风险提示立刻消失,这一步要主动申诉。
流程是:确认全站已无可疑文件、页面返回正常 → 在百度搜索资源平台的站点安全或反馈入口提交申诉,说明发现时间、处置过程和加固措施 → 重新提交 sitemap.xml → 用普通收录接口推送重点页面,加快重新抓取。必应和 Google 各有对应入口,做外贸站的要一并提交。
时间预期要摆正:风险提示消除通常在 3-15 个工作日,站点规模大或被多次标记的可能到 1 个月;排名恢复到原位一般再要 2-8 周,取决于站点原本的权重和被篡改页面数量。这段时间不要做两件事:不要大量堆新内容冲权重,也不要买外链,被降权期的异常操作会被放大判断。
还有一件容易漏的收尾:被入侵期间如果生成了大量垃圾页面(博彩、发票、代开这类),要逐条确认返回 404 或 410,并在搜索资源平台提交死链。这些页面留在索引里,会持续拖累整站的信任评分,清完不处理等于留了个尾巴。
七、加固清单:七个开关,防二次入侵
清理只解决当下,加固才决定会不会再来一次,七项做完才算闭环。
- 补丁跟进。CMS 核心、插件、主题全部升到官方最新稳定版,停更的插件直接卸载,不要留着「以后可能用」。
- 后台防护。强密码(12 位以上混合)+ 二次验证,后台路径改掉默认的
/admin,限制登录失败次数。 - 上传目录禁执行。在
uploads等目录放一条禁止执行脚本的规则,图片目录永远不需要运行代码,这是最有效的一刀。 - 权限收敛。目录 755、文件 644,配置文件 600,去掉多余的写权限;能不用 FTP 就换 SFTP,普通 FTP 是明文传输。
- 关掉不用的东西。不用的端口、示例程序、测试页面、旧版备份文件(
www.zip、database.sql)全部删除,备份包放在网站目录里等于把源码公开下载。 - 开启防护。主机自带的安全防护或 WAF 打开,能挡掉大部分自动化扫描,成本几乎为零。
- 异地自动备份。每天一次,保留 7-30 天,且备份文件不能在网站根目录下。这次能快速恢复,靠的就是有一份干净备份。
最后一条经验:被挂马往往不是单点问题,而是「长期没人管」的结果。把上面七项做成一季度一次的例行检查,比出事后再找人救火便宜得多。做 沈阳网站建设 时如果服务方提供年度维护,签约前问清三件事:多久跟一次补丁、备份存在哪、出事多久响应,这三问能筛掉大部分只管卖不管养的供应商。
八、一句话总结
被挂马的正确处置顺序是:打包备份现场 → 断传播 → 换掉全部凭据 → 按修改时间和日志定位后门 → 用干净文件整体覆盖 → 七项加固 → 去搜索平台申诉。跳过备份和改密这两步,等于给攻击者留了回门的钥匙,这也是同一站点反复被挂马的最主要原因。
常见问题
网站被挂马了,直接把跳转代码删掉不行吗?
不行,删掉的多半只是表现。跳转脚本通常由另一个后门文件动态写入,后门不清,一两天内会重新写回。正确做法是先打包备份整站和数据库,再改掉 FTP、数据库、后台的全部密码,然后按文件修改时间和访问日志找到那个后门文件。只有入口被清掉、凭据被换掉,才算处理完。
怎么快速判断自己的网站有没有被挂马?
四个动作,十分钟能查完。一是在百度搜 site 加域名,看标题下有没有安全风险提示;二是从搜索结果点进来,看是否跳转到别的站,直接输网址却正常;三是用 FTP 按修改时间排序,看有没有自己没传过的 php 文件;四是打开首页源码,搜不认识的 script 外链域名。命中任意一条就要按挂马处理。
清理挂马大概要多少钱,能自己弄吗?
应急清理通常在 800-2000 元,带加固和申诉的 2000-5000 元,站点要重做则 5000-20000 元,取决于后门数量和站点规模。懂技术的可以自己按备份、改密、定位、覆盖的顺序做,前提是能看懂日志和代码。如果站点是定制开发、代码结构清楚,找原开发方处理往往更快。
站点清理干净了,百度上的风险提示多久消失?
一般 3-15 个工作日,被多次标记或站点规模大的可能到 1 个月。前提是主动申诉:确认全站无可疑文件后,在搜索资源平台提交申诉并说明处置过程,重新提交 sitemap,再推送重点页面加快抓取。排名恢复比提示消除更慢,通常还要 2-8 周,这期间不要堆内容或买外链。
需要专业支持?
需要沈阳网站建设方案与报价? 咨询电话 13897931644,或访问联系我们提交需求。