关于WordPress pingback被利用对外攻击的防范措施

最近观测发现,有大量的wordpress程序网站有对外发包攻击别人的情况,导致服务器资源耗尽,带宽跑满,网站直接瘫痪,经核实,是wordpress的pingback被利用导致的,日志里面有大量的相关记录。

blob.png

关闭pingback功能

pingback在wordpress简体中文中译作“引用”,原本用途是通知对方这个地方有和你相关的信息。但却被黑客大面积利用进行攻击,所以直接建议进行关闭,操作方法:

登陆网站后台 --> 设置--> 讨论 --> 接受从其它博客的链接通知(pingback和trackback)

在这里将勾选去掉并保存,如下图所示:

taolun

并使用phpmyadmin在线管理mysql,在sql中执行以下语句:

UPDATE wp_posts SET ping_status = 'closed';

另外可以将下面的代码添加到主题目录的functions.php文件中。

add_filter( 'xmlrpc_methods', function( $methods ) {

   unset( $methods['pingback.ping'] );

   return $methods;} );


防范wordpress pingback对自己网站攻击:

需要阻止wordpress pingback攻击,可以利用rewrite设置屏蔽wordpress的U-AGENT请求。rewrite屏蔽规则参考说明:http://faq.myhostadmin.net/faq/listagent.asp?unid=662 HTTP_USER_AGENT头信息这行填写WordPress。

RewriteCond %{HTTP_USER_AGENT} "WordPress" [NC]

示例(linux下规则):

<IfModule mod_rewrite.c>
RewriteEngine On
#Block WordPress
RewriteCond %{HTTP_USER_AGENT} "WordPress" [NC]
RewriteRule (.*) - [F]

</IfModule>

利用规则屏蔽并不能完全解决,攻击量太多还是会导致网站瘫痪。


日期:2016-07-26

打印 】