网站被挂马/黑链解决方法

UID:3 一级用户组

网站突然被降权?用户反馈跳转赌博页面?这篇指南帮你彻底清理并堵住漏洞

一、先搞清状况:你的网站出了什么问题?

很多站长发现网站异常时,第一反应是"被黑了",但具体是什么问题、严不严重,需要先搞清楚。最常见的有三种情况:

问题类型 典型表现 对网站的影响
黑链 页面肉眼看着正常,但源代码里隐藏了大量指向赌博、色情网站的链接 搜索引擎降权、排名暴跌
恶意跳转 PC端访问正常,手机端跳转到非法网站;或从百度进来跳转,直接输入网址正常 用户体验极差,被浏览器拦截
挂马/篡改 页面被插入恶意JS,首页标题被改成博彩内容,网站被浏览器报毒 用户数据泄露风险,网站被列入黑名单

真实案例:某企业网站被黑后,从百度搜索进入会跳转到"北京赛车"等赌博网站,直接输入网址却完全正常。这种针对搜索引擎来源的定向劫持最隐蔽,站长自己很难发现。

二、如何检测:4种方法快速定位问题

2.1 查看网页源代码(最直接)

用浏览器打开网站首页,右键 → 查看页面源代码,按 Ctrl+F 搜索以下关键词:

搜索词 目的
http://https:// 找所有外部链接,排除正常资源后看有没有陌生域名
display:nonevisibility:hidden 找被隐藏的黑链
font-size:0color 与背景色相同 隐藏链接的常见手法
敏感词 赌博、彩票、时时彩、澳门、娱乐城等

正常的外链如友情链接、CDN资源、统计代码(百度统计、Google Analytics)需排除。

2.2 使用搜索引擎指令查收录异常

在百度或Google搜索:

text

site:你的域名 

查看收录结果中是否有:

  • 标题含敏感词(如"在线赌博"“私密直播”)

  • URL路径怪异(如 /x.php?id=123/seo/xxx.html

  • 内容明显不是你发布的

如果发现异常页面,说明黑客在你的服务器上批量生成了垃圾页面。

2.3 专业工具检测(省心省力)

工具 功能 地址
站长之家黑链检测 专查隐藏链接 tool.chinaz.com
百度网址安全中心 百度官方检测 bsb.baidu.com
Google Search Console 查外链、接收违规通知 search.google.com
网站安全狗 网马扫描+黑链检测 服务器端安装

2.4 服务器端深度排查(技术向)

如果以上方法确认有问题,需要登录服务器进一步排查:

  1. 检查近期修改的文件

    • 在Linux中执行 find /网站目录 -type f -mtime -7(查最近7天修改的文件)

    • 关注 .php.js.html 文件,尤其是 /uploads//cache//images/ 目录下的脚本文件

  2. 对比文件哈希

    bash

    # 生成当前文件的校验和 find /var/www/html -type f -exec sha256sum {} + > current.sha256 # 与备份文件对比,找出被改过的文件 sha256sum -c backup.sha256 
  3. 检查配置文件

    • .htaccess(Apache)或 Nginx配置文件,看是否被添加了重定向规则

    • 根目录下的 Global.asaweb.config 可疑文件

三、清理步骤:从紧急处理到彻底根除

3.1 第一步:紧急止损(立即做)

  1. 备份当前状态:导出数据库、打包网站文件(保留证据,也防操作失误)

  2. 隔离受影响系统:如果确认被入侵,立即更改所有密码:

    • 服务器SSH/RDP密码

    • 数据库密码

    • 网站后台管理员密码

    • FTP密码

  3. 临时切换维护页面:如果网站业务中断,可暂时关闭网站或切换只读模式

3.2 第二步:清理恶意代码

方法一:手动清理(适合懂代码的站长)

通过FTP或服务器文件管理器,下载网站文件:

  1. 检查并清理首页文件(index.phpindex.html)中的异常代码

  2. 检查模板文件(header.phpfooter.php),黑链常被加在这里

  3. 检查所有 .js 文件,查找可疑的跳转代码

方法二:使用工具批量清理

如果恶意代码数量多,可用工具批量替换:

网站安全狗的"批量替换"功能:

  • 路径:安全工具箱 → 批量替换

  • 设置扫描目录 → 输入要替换的恶意代码 → 执行替换

方法三:直接恢复备份

如果有定期备份且确认备份是干净的:

  1. 删除当前网站目录所有文件

  2. 上传干净的备份文件

  3. 更换所有密码

:warning: 注意:直接恢复备份而不堵漏洞,很快会被再次篡改。

3.3 第三步:清理搜索引擎中的不良记录

清理完网站后,还需要清理搜索引擎中的"脏数据":

  1. 提交死链删除:进入百度搜索资源平台 → 死链提交工具,将被黑客生成的垃圾页面URL提交删除

  2. 请求重新审核:Google Search Console中提交重新审核申请,说明已清理恶意内容

  3. 更新站点地图:重新生成并提交sitemap,帮助搜索引擎尽快抓取干净的页面

3.4 第四步:溯源堵漏(防止再次被黑)

清理只是治标,修复漏洞才是治本。根据被黑的入口,逐一加固:

常见入侵入口 加固措施
CMS漏洞 升级WordPress、Discuz等到最新版本;删除不用的插件/主题
弱口令 修改所有密码为复杂密码(大小写+数字+特殊符号,16位以上)
文件上传漏洞 限制上传目录脚本执行权限;上传文件进行重命名和类型校验
SQL注入 部署WAF;对用户输入进行过滤;使用参数化查询
服务器配置问题 关闭目录浏览权限;限制PHP执行目录;禁用危险函数
其他网站牵连 如果服务器有多个网站,其他站被黑可能导致你的站也被入侵

四、防护措施:如何防止再次被黑

4.1 日常防护清单

防护措施 具体做法
定期更新 每周检查CMS、插件、主题是否有安全更新,及时打补丁
文件权限 配置文件设为644,目录设为755;核心文件可加 chattr +i 锁定
部署WAF Cloudflare、云WAF或服务器端ModSecurity,拦截恶意请求
定期备份 网站文件+数据库每日/每周自动备份,异地存储
安装安全插件 WordPress可装Wordfence、Sucuri;服务器可装网站安全狗
文件监控 使用AIDE、Tripwire监控文件完整性,发现异常立即告警

4.2 定期自查(每周5分钟)

  1. site:你的域名 查收录是否正常

  2. 查看网站首页源代码,扫一眼底部有没有陌生链接

  3. 登录服务器,检查 auth.logsecure 日志有无异常登录尝试

4.3 服务器安全加固

bash

# 禁用危险PHP函数 disable_functions = exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source # 限制PHP访问目录 open_basedir = /var/www/html:/tmp # SSH改用密钥登录,禁用密码登录 PasswordAuthentication no 

Windows服务器:关闭不需要的服务,仅开放必要端口(80/443/3389等),安装安全狗或云锁

五、典型案例与解决思路

案例1:网站反复被黑,清理后又出现

“我把文件删了替换成备份,第二天立马又出现了”

原因:只清理了表面文件,没有清除黑客留下的后门文件(webshell)。黑客通过这些后门可以随时重新篡改网站。

解决方案

  • 使用安全狗等工具全盘扫描webshell

  • 重点检查 /uploads//cache/ 等可写目录中的php文件

  • 检查隐藏文件(如 .xxx.php

案例2:只有从百度搜索进来才跳转

“直接输入网址正常,从百度搜索结果点进来就跳转到赌博网站”

原因:黑客在代码中加入了对HTTP Referer的判断,只有来源是搜索引擎时才触发跳转。

解决方案

  • 检查 .js 文件和模板文件中的 document.referrer 相关代码

  • 检查 .htaccess 或 Nginx配置中的条件重定向

案例3:网站标题被篡改但内容正常

“百度快照显示的是赌博内容,但打开网站是正常的”

原因:黑客修改了网页的 <title><meta description>,或者针对搜索引擎爬虫做了特殊处理(cloaking)。

解决方案

  • 查看源代码中的title和description

  • 用不同User-Agent访问(如模拟百度蜘蛛)对比返回内容

六、什么时候需要请专业团队?

以下情况建议寻求专业安全公司帮助:

情况 说明
自己清理后反复被黑 说明有后门没清干净,或漏洞没修复
不懂代码 看不懂PHP/JS代码,无法定位恶意逻辑
网站涉及交易/用户数据 数据泄露风险高,需要专业取证和清理
多个网站同时被黑 服务器层面可能已被渗透

国内专业的安全公司如Sinesafe、绿盟等提供网站安全服务。

七、快速自查清单

日常检查(每周)

  • site: 指令查收录是否异常

  • 查看首页源代码底部是否有陌生链接

  • 检查服务器登录日志

  • 确认备份任务正常运行

发现异常后(紧急处理)

  • 立即备份当前状态

  • 修改所有密码

  • 清理恶意代码或恢复备份

  • 提交死链删除到搜索引擎

  • 排查漏洞入口并修复

  • 部署WAF和文件监控

清理挂马和黑链是一个"发现 → 清理 → 堵漏 → 防护"的闭环过程。只清理不堵漏,等于给黑客留了后门,过几天还会回来。

最新回复

请先登录后再回复 登录

uid:3 一级用户组
关注
发帖 25
评论 25
粉丝 0
关注 0
发新帖
目录
网站被挂马/黑链解决方法