周末假期过后,我管理的一个较大的网站遭到了暴力攻击。攻击者试图使用wp.getUsersBlogs
函数和常用用户名和密码列表。快速的研究表明,在成功尝试后,此函数将返回用户是否是管理员。
我使用IP黑名单云插件作为安全的一部分,因此它记录了攻击,但由于此攻击方法不使用正常的登录方法,因此不会发生实际的黑名单。无论如何,这都不会有什么帮助,因为每次尝试后,攻击者都会使用一个新的IP(到目前为止总共超过15000个IP)(第二次攻击超过20000个)。
我确实找到了一个完全禁用XML-RPC(API)的插件,但我不确定这不会导致其他问题。这是一个当地市政当局的实时网站,所以我无法承担太多的实验费用。
以下是登录IP黑名单云的示例:
“1.0”编码=“iso-8859-1”?>wp。getUsersBlogsusernamepassword
哪里usernamepassword 将被一个巨大的流行用户名和密码列表中的内容所取代。
这种攻击似乎越来越受欢迎,因此我希望这会产生更多的解决方案。
更新20140728:
周末,我的另一个网站成为这次袭击的受害者。到目前为止,强大的密码保护了我的安全,但其他人可能没有这么幸运。我正在尝试上述解决方案,因为这似乎是我找到的最好的解决方案。
更多研究链接:
WordPress XML RPC的APIhttp://codex.wordpress.org/XML-RPC_WordPress_API
迄今为止干扰最小的解决方案http://www.cryptobells.com/more-wordpress-xmlrpc-brute-force-attacks/
WordPress支持论坛http://wordpress.org/support/topic/recent-new-xmlrpcphp-brute-force-password-guessing-attack-details
最合适的回答,由SO网友:KnightHawk 整理而成
这是我能找到的最具体的解决方案,因为它只禁用被攻击的单个函数。
功能。php:
function Remove_Unneeded_XMLRPC( $methods ) {
unset( $methods[\'wp.getUsersBlogs\'] );
return $methods;
}
add_filter( \'xmlrpc_methods\', \'Remove_Unneeded_XMLRPC\' );
在以下位置找到此项:
http://www.cryptobells.com/more-wordpress-xmlrpc-brute-force-attacks/对于更广泛的解决方案,有一个名为“禁用XML-RPC”的WordPress插件,它正是这样做的,即禁用整个XML-RPC功能。