Products
GG网络技术分享 2025-03-18 16:04 0
Wordpress网站被入侵 被恶意修改了主页和管理员邮箱地址
昨天收到邮件说网站管理员邮箱修改了,一看就是临时邮箱,说明网站被入侵了,网站也自动跳转,不能正常访问了。
当然这事处理起来很简单:登录数据库phpmyadmin-wp-options-修改siteurl和home 为正确的地址就好了。害怕还有别的数据被修改,所有不放心的话,把数据库恢复一下(备份备份备份)。因为之前网站搭建的时候图省事,管理员用的admin,所以顺手把管理员用户名给改了(网站后台是不能修改的,只能数据库里修改),定位到wp-users修改user-login就好,随便改,自己要记住哦。我的网站是多站点,修改完以后发现找不到 管理网络 和 插件 两个菜单的入口了。网站前台是可以正常访问的。wp-config,重新设置多站点,还是不行,取消多站点,插件菜单就有了,开启多站点,又没有了。恢复更老的数据,还是一样。捣鼓了一天 都没搞明白。今天再重新试一下,还是不行啊。找人弄的话,恐怕把网站搞得乱七八糟的。怎么办,百度上都搜遍了,只能谷歌了,用英文搜。求人不如求己,终于解决了,方法很简单,就是在数据库改管理员用户名以后,权限不够了。定位到 wp-sitemeta,找到 site_admins,发现这里的用户名还是老的,把它修改为新的,和管理员户名一致就好了。a:1:{i:0;s:5:"admin;}
修改为
a:1:{i:0;s:8:"username;}
此处的数字 5和8 ,是用户名的字母数,admin是5个字母,username是8个字母。
关于防护,1, 推荐wordfence 和 wps limit login 两个插件, wps limit login 是修改登录地址的,wordfence是防火墙防护和扫描,刚安装这才一会,就收到有人入侵的提醒邮件。
2, wp-config加入以下代码:define('WP_HOME','https://www.270du.com/');define('WP_SITEURL','https://www.270du.com/');
3, 通过CDN加速,设置防护,国内的用百度:
百度CDN云加速
网站打不开:需要上传SSL 证书
网站排版错乱:HTTPS加速改为全程加密。
国外的用cloudflare:防火墙-防火墙规则-创建防火墙规则-选择最后一项“威胁分数”-大于等于2-and-合法机器人爬虫-关闭-选择操作-质询(captcha);还可以选择排除的国家和地区,以达到限制访问的目的。
4, PHP文件扫描:打包php文件 find ./ -name "*.php" | xargs zip 1.zip 扫描:scanner.baidu.com
5, 主题function.php权限改为444只读
6, 禁用xmlrpc
然后在宝塔配置文件中加入:
location = /xmlrpc.php { # 这行开始deny all;
return 444;
access_log off; # 这行结束
}
7, phpmyadmin 数据库-添加事件,自动定时修改
update wp_options SET option_value=REPLACE(option_value,'入侵网址','自己的网址')
update wp_2_posts SET post_content=REPLACE(post_content,'入侵网址','自己的网址')
update wp_2_postmeta SET meta_value=REPLACE(meta_value,'入侵网址','自己的网址')
8, 创建触发器phpmyadmin 数据库-触发器-添加触发器-名称随便,表wp_options,before,update,定义中填写
IF (NEW.option_id IN (1,2,3,4,6)) THENSIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Cannot update locked record';
END IF;
Demand feedback