WordPress被利用xmlrpc.php进行CC暴力攻击进行禁用/屏蔽解决办法

WordPress被利用xmlrpc.php进行CC暴力攻击进行禁用/屏蔽解决办法插图

最近虾皮路发现网站有时候访问缓慢,检查了一下日志发现,发现存在很多CC攻击及暴力破解的记录,主要围绕xmlrpc.php文件进行。虾皮路于是对xmlrpc.php进行了处理,处理过后发现网站速度又回来了。接下来分享一下WordPress被利用xmlrpc.php进行CC暴力攻击解决办法。

一、什么是xmlrpc

xmlrpc是XML-RPC文件,XML-RPC是支持WordPress与其他系统之间通信的规范。它通过使用HTTP作为传输机制和XML作为编码机制来标准化这些通信来实现此目的。在WordPress的早期版本中,默认情况下已关闭XML-RPC。但是从3.5版开始,默认情况下已启用它。这样做的主要原因是允许WordPress移动应用程序与您的WordPress安装进行对话。但是XML-RPC不仅用于移动应用程序:它还用于允许WordPress和其他博客平台之间进行通信,还支持引用和pingback,并为Jetpack插件提供了动力,该插件链接了一个自托管的WordPress WordPress.com网站。

但是由于REST API已集成到WordPress核心中,因此xmlrpc.php文件不再用于此通信。相反,REST API用于与WordPress移动应用程序,桌面客户端,其他博客平台,WordPress.com(用于Jetpack插件)以及其他系统和服务进行通信。REST API功能更强,使用更灵活。由于REST API取代了XML-RPC,因此您现在应该在站点上禁用xmlrpc.php。

二、为什么不直接禁用或者删除xmlrpc

因为WordPress的主要功能之一始终是向后兼容。如果您对网站进行了良好的管理,您将知道保持WordPress最新以及任何插件或主题是必不可少的。但是总会有不愿或无法更新其WordPress版本的网站所有者。如果他们运行的版本早于REST API,则他们仍然需要访问xmlrpc.php。

三、xmlrpc.php带来的影响

xmlrpc.php启用的功能之一是pingback和Trackbacks。当另一个博客或网站链接到您的内容时,这些通知将显示在您网站的评论中。但是如果您的站点上启用了XML-RPC,则黑客可能会利用xmlrpc.php在短时间内向您的站点发送大量pingback,从而在您的站点上发起DDoS攻击。这可能会使服务器超载,并使站点无法正常运行。

因为xmlrpc.php随每个请求发送身份验证信息,所以黑客可以使用它来尝试访问您的站点。这样的暴力攻击可能使他们可以插入内容,删除代码或破坏数据库。如果攻击者向您的站点发送了足够多的请求,每个请求使用不同的用户名和密码对,则它们最终有可能会被攻击到正确的请求,从而使他们可以访问您的站点,类似CC攻击,虾皮路就经常遇到。

WordPress被利用xmlrpc.php进行CC暴力攻击进行禁用/屏蔽解决办法插图1

四、如何禁用xmlrpc.php

禁用或者屏蔽xmlrpc.php的方法有大概6种,毕竟不能直接删除xmlrpc.php,不然有可能导致各种问题出现。

1、屏蔽XML-RPC(pingback)的功能
在自己主题的functions.php文件最后面添加

add_filter('xmlrpc_enabled', '__return_false');

2、通过.htaccess屏蔽xmlrpc.php文件的访问

# protect xmlrpc
Order Deny,Allow
Deny from all

3、修改.htaccess文件加跳转
如果有用户访问xmlrpc.php文件,然后让其跳转到其他不存在或者存在的其他页面,降低自身网站的负担。

# protect xmlrpc
Redirect 301 /xmlrpc.php http://example.com/custom-page.php

4、阻止pingback端口
在自己的主题functions.php文件最后添加

add_filter( 'xmlrpc_methods', 'remove_xmlrpc_pingback_ping' );
function remove_xmlrpc_pingback_ping( $methods ) {
unset( $methods['pingback.ping'] );
return $methods;
}

5、在nginx服务器配置里添加如下代码

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

6、安装屏蔽插件
安装Login Security Solution插件

总结

1、不要直接删除xmlrpc.php,否则它会让你的wordpress网站发生莫名的错误。2、建议第1或者第2种,虾皮路使用的是第2种。
3、其实扫描也罢,http的DDOS攻击也罢,CC攻击也罢,总之大量消耗服务器资源我们的服务器是累死的。
4、如果你正在使用如JetPack之类的插件,删除掉这个文件可能会让你的网站功能异常。
5、建议把WP升级到最新版本,相信新版本漏洞会少一点吧。
6、一般这个功能是用不到的,我们直接屏蔽掉,默认当前的WP版本是开启的。这样,我们就可以解决WordPress被利用xmlrpc.php暴力破解攻击问题。有些时候并不是针对我们的网站攻击,而是对方利用某个关键字扫到我们的网站造成的。

 收藏 (0) 更新不易,打赏吧

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

除特别注明外,本站所有文章均基于CC-BY-NC-SA 4.0原创,转载请注明出处。
文章名称:《WordPress被利用xmlrpc.php进行CC暴力攻击进行禁用/屏蔽解决办法》
文章链接:https://www.xiapilu.com/web/web-tutorial/wordpress-disable-xmlrpc-cc-attack.html
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录   注册

切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活