当前位置:网站首页 >  攻略

WordPress域名劫持的完整诊断与修复实操指南

时间:2026年05月26日 21:16:57 来源:易频IT社区

问题诊断:确认域名被劫持

在开始任何修复操作前,你必须先确认网站确实遭遇了域名劫持,而不是其他问题。请按顺序执行以下检查。

检查1:本地Hosts文件劫持

打开你电脑的命令提示符(Windows)或终端(Mac/Linux),执行以下命令:

ping yourdomain.com

将 `yourdomain.com` 替换为你实际被劫持的域名。观察返回的IP地址。立即执行以下操作:

  • Windows系统:打开 `C:\Windows\System32\drivers\etc\hosts` 文件(用管理员权限的记事本)。
  • Mac/Linux系统:在终端输入 `sudo nano /etc/hosts`。

检查文件中是否存在指向你域名的异常行。如果发现类似 `192.168.1.100 yourdomain.com` 的行,且该IP并非你服务器的真实IP,则说明存在本地劫持。删除该行并保存文件。

检查2:DNS解析劫持

使用在线DNS查询工具(如 Google Admin Toolbox Dig)查询你域名的A记录和NS记录。将查询结果与你域名注册商处设置的DNS记录进行比对。如果NS记录被指向未知的DNS服务器,或A记录IP地址被篡改,则确定为DNS劫持。

检查3:WordPress数据库与文件劫持

WordPress域名劫持的完整诊断与修复实操指南

通过FTP或主机控制面板的文件管理器,检查网站根目录下是否存在陌生的 `.php`、`.js` 或 `.htaccess` 文件。登录你的网站数据库管理工具(如phpMyAdmin),执行以下SQL查询,检查 `wp_options` 表中的 `siteurl` 和 `home` 选项值:

SELECT  FROM `wp_options` WHERE `option_name` IN ('siteurl', 'home');

如果这两个值被修改为陌生域名,则数据库被篡改。

修复操作:分步夺回控制权

根据诊断结果,按以下对应流程操作。建议按顺序执行所有步骤,以确保彻底清除威胁。

第一步:修复DNS与域名注册商账户

这是最优先的步骤,因为攻击者可能控制了你的域名。

  1. 立即登录你的域名注册商账户(如GoDaddy、Namecheap、阿里云万网)。如果你无法登录,请立即使用“忘记密码”功能重置密码,并检查账户的注册邮箱是否被篡改。
  2. 在域名管理面板中,检查并修改DNS设置:
    • 将NS记录改回你的主机服务商提供的DNS服务器(例如,`ns1.yourhost.com` 和 `ns2.yourhost.com`)或可靠的第三方DNS(如Cloudflare的DNS)。
    • 将A记录指向你服务器的正确IP地址。
  3. 开启域名注册锁(Registrar Lock),并启用WHOIS隐私保护(如果可用),以防止未经授权的转移。
  4. 在账户设置中,启用二次验证(2FA)。

第二步:彻底清理被入侵的WordPress文件

不要试图在旧文件中寻找恶意代码,最安全的方法是替换核心文件。

  1. WordPress.org官网 下载最新版本的WordPress安装包。
  2. 通过FTP连接到你的服务器。删除以下目录和文件(注意:操作前请备份你的 `wp-content/themes` 和 `wp-content/plugins` 目录):
    • `wp-admin`
    • `wp-includes`
    • 所有根目录下以 `wp-` 开头的 `.php` 文件(如 `wp-login.php`)。但务必保留 `wp-config.php` 文件。
  3. 将下载的WordPress安装包解压,将全新的 `wp-admin`、`wp-includes` 目录以及根目录下的所有PHP文件上传到服务器,覆盖剩余文件。
  4. 检查并清理 `wp-content` 目录:
    • 逐一检查 `plugins` 和 `themes` 目录下的每个插件和主题文件夹。删除任何你不认识、已禁用或来源不明的插件/主题。
    • 检查 `uploads` 目录,按日期排序,删除在问题发生日期前后上传的可疑文件(如 `.php` 文件)。
  5. 检查根目录下的 `.htaccess` 文件。将其重置为WordPress默认规则。如果内容异常,直接删除它,WordPress会在下次访问时生成一个干净的。默认规则如下:
     BEGIN WordPress
    
    RewriteEngine On
    RewriteRule . - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    
    END WordPress

第三步:修复被篡改的数据库

  1. 登录phpMyAdmin,选择你的WordPress数据库。
  2. 找到 `wp_options` 表(注意:如果你的表前缀不是 `wp_`,请相应调整),点击“浏览”。
  3. 找到 `option_name` 为 `siteurl` 和 `home` 的两行,确保 `option_value` 是你的正确域名(例如 `https://yourdomain.com`)。如果被修改,直接点击编辑进行修正。
  4. 执行以下SQL查询,搜索数据库中可能被注入的恶意代码或陌生域名链接(将 `yourdomain.com` 替换为你的正确域名):
    SELECT  FROM `wp_posts` WHERE `post_content` LIKE '%%' OR `post_content` LIKE '%src=//malicious-domain%';
    SELECT  FROM `wp_postmeta` WHERE `meta_value` LIKE '%%';
    SELECT  FROM `wp_options` WHERE `option_value` LIKE '%%';
    如果发现异常记录,请根据上下文判断并清理。

第四步:重置所有凭据与安全加固

  1. 在WordPress后台重置所有用户密码,特别是管理员账户。进入“用户”->“所有用户”,逐个编辑,生成强密码。
  2. 更新所有密钥(Salts)。访问 WordPress官方密钥生成器,获取全新的密钥对。打开网站根目录的 `wp-config.php` 文件,找到类似以下代码的部分,用新生成的内容全部替换:
    define('AUTH_KEY',         'put your unique phrase here');
    define('SECURE_AUTH_KEY',  'put your unique phrase here');
    define('LOGGED_IN_KEY',    'put your unique phrase here');
    define('NONCE_KEY',        'put your unique phrase here');
    define('AUTH_SALT',        'put your unique phrase here');
    define('SECURE_AUTH_SALT', 'put your unique phrase here');
    define('LOGGED_IN_SALT',   'put your unique phrase here');
    define('NONCE_SALT',       'put your unique phrase here');
    此操作会使所有当前登录会话失效。
  3. 更新FTP/SFTP和主机控制面板的密码。
  4. 联系你的主机服务商,告知网站被入侵,请求他们检查服务器层面是否有后门或恶意进程。

修复后验证与监控

  1. 清除你本地浏览器和CDN(如Cloudflare)的缓存。
  2. 使用 Sucuri SiteCheckVirusTotal 等在线工具扫描你的域名,确认不再报告恶意软件或黑名单。
  3. 在Google Search Console中提交被黑网站“已修复”请求,并请求重新审核。
  4. 安装一款可靠的安全插件(如Wordfence Security),启用防火墙和恶意软件扫描功能,并设置定期扫描。
  5. 立即为整个网站和数据库创建一次全新的完整备份,并存储于服务器之外的安全位置。

完成以上所有步骤后,你的WordPress网站应已从域名劫持中恢复。关键在于快速行动、彻底清理所有层面(DNS、文件、数据库)并立即加强所有安全凭据,以防止攻击者再次利用相同漏洞入侵。

相关推荐

最新

热门

推荐

精选

标签

易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。

Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图