解决网站被利用xmlrpc.php文件攻击的方法

avatar
avatar
大熊
77
文章
546
评论
2021年2月26日 3 338 868字阅读2分53秒

用Wordpres程序的朋友应该都知道xmlrpc.php文件,它是我们客户端远程管理编辑网站、小程序等需使用的接口文件,但很多不良人士会利用xmlrpc.php文件来绕过Wordpress后台的登录错误限制进行爆破,消耗主机资源,大家可以用以下方法解决:

方法一:屏蔽 XML-RPC (pingback)的功能

在functions.php中添加。PS:很多主题已集成此代码。

add_filter('xmlrpc_enabled', '__return_false');

方法二:删除或清空xmlrpc.php文件内容

推荐清空文件内容,不建议删除xmlrpc.php文件,因为可能造成莫名其妙的错误。

方法三:利用配置文件直接拒绝访问或跳转

1、Nginx

location ~* /xmlrpc.php {
  deny all;
}

或者跳转

location ~* /xmlrpc.php {
  proxy_pass https://www.baidu.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.baidu.com
</IfModule>

方法四:利用宝塔防火墙解决此问题

但是像我这种需要这个接口用手机客户端的人来说,实在不妥,可以利用宝塔防火墙解决此问题。

首先,将/xmlrpc.php加入URL黑名单拒绝访问。PS:还有/wp-json也可以加进去。

解决网站被利用xmlrpc.php文件攻击的方法

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

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

解决网站被利用xmlrpc.php文件攻击的方法

这样一来,除了特定UA,其他访问都是403。

网络最后更新:2021年3月2日
avatar
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论列表 评论:3   「访客  2   男主  1   女主  0」  
    • avatar 青山 谷歌浏览器 Windows 10 回复

      我前段时间一直被ddos,看了下访问日志,xmlrpc.php访问确实挺多

      • avatar 星光 火狐浏览器 Windows 10 回复

        大熊版主提供的方法很好用。