WordPress:解决xmlrpc.php被扫描爆破的风险

使用WordPress的朋友都知道,一些【垃圾渣渣】会利用xmlrpc.php文件来进行攻击,绕过WP后台错误登录次数限制进行爆破。虽然密码复杂的极难爆破,但及其占用服务器资源。

  • 方法一、利用宝塔防火墙(收费版)

一般可以直接使用宝塔的防火墙来防护此类攻击。当然宝塔防火墙在官方是收费的。首先,将/xmlrpc.php加入URL黑名单拒绝访问。PS:还有/wp-json也可以加进去。

利用宝塔规则优先级:UA白名单> UA黑名单> URL关键词拦截> IP白名单 > IP黑名单 > URL白名单 > URL黑名单 > CC防御 > 禁止境外IP访问 >User-Agent > URI过滤 > URL参数 > Cookie > POST

然后将自己设备UA加入白名单即可,自己设备具体UA可以在网站访问日志里查看。

设置好后,除了特定的UA访问,其他访问该文件都是403。

  • 方法二、屏蔽 XML-RPC (pingback)的功能 (云站友推荐)

直接屏蔽XML-RPC (pingback)功能也有效的防护攻击。

在你所使用主题的functions.php文件中添加以下代码。(注:现在很多主题都已经集成了该代码)

复制代码
add_filter('xmlrpc_enabled', '__return_false');
  • 方法三、删除或清空xmlrpc.php文件内容

我们可以直接删除xmlrpc.php文件中的代码。

注意:这里推荐是删除文件中的代码。不要删除整个文件。不然会造成莫名其妙的保存。

  • 方法四、利用配置文件直接拒绝访问或跳转

1、Nginx

复制代码
location ~* /xmlrpc.php {
  deny all;
}

或者跳转

复制代码
location ~* /xmlrpc.php {
  proxy_pass https://www.wwttl.com;
}

2、apache

复制代码
# protect xmlrpc
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>

或者跳转

复制代码
# protect xmlrpc
<IfModule mod_alias.c>
Redirect 301 /xmlrpc.php https://www.wwttl.com
</IfModule>

以上四种方法,比较推荐第二种方法,使用屏蔽 XML-RPC (pingback)的功能!

相关推荐
北京盛世宏博9 小时前
工业环境监测选型:Modbus TCP以太网温湿度传感器部署、调试、避坑全指南
开发语言·网络·php
4SAPI9 小时前
AI API Gateway平台哪个好?从架构视角看企业多模型网关选型与实践
java·大数据·人工智能·gateway·php
ly768910 小时前
MongoDB 副本集选举风暴排查:从心跳超时到 Journal 刷盘阻塞
数据库·mongodb·php·mongodb 副本集·选举风暴·journal 刷盘·writeconcern
源图客10 小时前
浏览器开发者工具使用
开发语言·php
qetfw10 小时前
Debian iptables 防火墙:默认拒绝、SNAT 与 DNAT 验证
linux·服务器·debian·php
ESDWAN13 小时前
跨境网络频繁掉线怎么排查?从企业内网到 SD-WAN 链路的故障诊断
开发语言·网络·php
禾小西15 小时前
06丨Redis 数据同步:主从库如何实现数据一致?
数据库·redis·php
Zooproxy全球IP代理15 小时前
海外代理IP纯净度评估:指标、检测与调度实践
网络协议·tcp/ip·php
Solis程序员16 小时前
Stripe 幂等表:把「不确定的重试」变成「查表返回」
前端·安全·bootstrap·php·agent
PHP实战开发录16 小时前
MySQL数字排序为什么乱
数据库·mysql·php