xmlrpcphp被攻击,解决办法。

xmlrpcphp被攻击,解决办法。xmlrpcphp被攻击怎么知道是谁,这个当然不是人做的,这不是笑话,这本身就是机器人做的。不说废话,解决办法有简单的有两种:

1:安装插件,在wordpress后台搜索一下就有很多这样的相关插件。
2:在functi

[时间:11-02]    [浏览:]    [放入收藏夹]    [查看详情]
xmlrpcphp被攻击,解决办法。xmlrpcphp被攻击怎么知道是谁,这个当然不是人做的,这不是笑话,这本身就是机器人做的。不说废话,解决办法有简单的有两种:

1:安装插件,在wordpress后台搜索一下就有很多这样的相关插件。
2:在functions.php中添加。PS:很多主题已集成此代码。

2:add_filter('xmlrpc_enabled','__return_false');      


       对比:     add_filter('xmlrpc_enabled', '__return_false');

你们对比上面两段代码,是一样的,但又不是一样的。你们觉得问题出在哪里了?是不是大小写?多了个空格。。。。。。。。。。。。
 



 

抄来的核心点分享:我在某网站还看到有人在分享破解方法:

 

xmlrpc.php 原本是Wordpress 程序留给手机APP用的一个API页面。被攻击者用来爆破后台管理密码。

这里先不讨论如何防护,也先不讨论它是否能爆破成功。我先顺着这个IP找到最早的几条访问记录。

【第1、2条】
请求:自动攻击程序,首先使用了两次GET 请求来访问我网站的首页。
作用:目测是用来判断,这个站点是否在线。

【第3条】
请求:自动攻击程序构造了 https://域名//wp-includes/wlwmanifest.xml 的URL进行GET
作用:目测是用来判断你是否使用了Wordpress程序。

【第4-6条】
请求:构造了 //?author=1 //?author=2 //?author=3
作用:目测是通过用户ID ,来确定你的管理员用户名!

【第7条】
请求:构造了 https://域名//wp-json/wp/v2/users/ 的URL进行GET
作用:用以再次确认你的管理员用户名是否正确!

【第8条】
请求:构造了 //wp-json/oembed/1.0/embed?url=xxx 的URL进行GET
作用:猜测应该是旧版本Wordpress的一个 CVE-2017-6514 的漏洞

通过以上8条请求,自动攻击程序就已经获得了你的【管理员用户名】
从而通过构造POST请求来不断的爆破你的/xmlrpc.php页面。来猜解你的密码。

当然爆破的成功率肯定是极小的。因为稍微注意Wordpress 安全的小伙伴早已把登陆页面隐藏了。或者直接禁用了xmlrpc.php页面。

不过没有安全加固的默认状态下,被攻击者拿到了管理员用户名还是很不爽的。
各位小伙伴可以通过以上URL测试一下自己的Wordpress站点。看看是不是可以拿到敏感信息。

http://你的域名/wp-includes/wlwmanifest.xml

http://你的域名/wp-json/wp/v2/users/


 

// 屏蔽 REST API
add_filter('rest_enabled', '__return_false');
add_filter('rest_jsonp_enabled', '__return_false');

// 移除头部 wp-json 标签和 HTTP header 中的 link 
remove_action('wp_head', 'rest_output_link_wp_head', 10 );
remove_action('template_redirect', 'rest_output_link_header', 11 );

 

/**
 * 禁用 WordPress 的 JSON REST API 
 * https://www.wpdaxue.com/disable-json-rest-api-in-wordpress.html
 */
add_filter('json_enabled', '__return_false');
add_filter('json_jsonp_enabled', '__return_false');




当然,如果你不会折腾代码,可以直接下载安装 Disable JSON API 插件激活即可,无需设置。



如果你是宝塔而且安装了专业版防火墙,还可以这样设置
在禁止访问的url中添加以下规则:


 

  1. /wp-json/wp/v2/users
  2. /wp-includes/wlwmanifest.xml



伪静态禁止办法:上面的方法都有些麻烦,下面的最实用,把想屏蔽的都屏蔽了。

 
  1. location ~ ^/wp-json/wp/v2/users {
  2. deny all;
  3. }
  1. location ~ ^/wp-includes/wlwmanifest.xml {
  2. deny all;
  3. }

 


标签: