网站被黑了怎么恢复?2026年实战排查步骤

王尘宇 问题解答 5

上个月帮一个朋友的WordPress站点处理了一次挂马事件。他的站被植入了恶意代码,Google Search Console里报了几十个"已收录的恶意软件页面"。花了一天半恢复,把流程写下来。

第一步:立即下线。不是关服务器,而是返回503状态码,同时给一个维护页面。这样做的好处是搜索引擎不会把恶意页面标记为"正常内容",避免降权。如果有Cloudflare,直接开"Under Attack"模式,能挡掉大部分攻击流量。

第二步:查入侵入口。90%的WordPress被黑是通过过期的插件或主题。SSH进服务器,先看最近修改的文件:find /网站目录 -type f -mtime -7(查最近7天修改的文件)。我那次发现/wp-content/plugins/一个废弃的contact-form插件/目录下多了三个PHP文件,文件名是乱码,内容是eval(base64_decode(一大段))——典型的webshell。

第三步:全量扫描。不要手动翻文件,扫描工具比自己肉眼准。Linux下用ClamAV(免费):clamscan -r /网站目录 输出所有可疑文件。PHP专用用Maldet(Linux Malware Detect):maldet -a /网站目录。那次扫出来12个恶意文件,分散在uploads、plugins、甚至wp-includes里。

第四步:看数据库。webshell不只是文件层面的,有些攻击会在数据库里插入恶意代码——尤其是wp_options表里的active_plugins字段、或者文章内容里嵌入的script标签。用phpMyAdmin或命令行查:SELECT * FROM wp_posts WHERE post_content LIKE %eval% OR post_content LIKE %base64%。那次在数据库里发现了三条被注入的