昨天发现自己基于WordPress的小站遭受了DDoS攻击,看了腾讯云CDN的统计分析,发现有两百来个ip不停请求wp-login.php以及xmlrpc.php暴力破解密码。说实话我的密码由软件生成管理的复杂程度我自己都怕 ,但是网站安全性还是要加强一下了,被当靶子的感觉真不舒服啊。主要做的是禁止了xmlrpc,wp-login登录界面做了跳转,安装了Wordfence插件~
WordPress禁止xmlrpc
xmlrpc.php这个文件到底是干啥的呢?其实它是为了实现让用户通过客户端来管理WordPress,例如使用博客客户端Weblog Clients来发布WordPress的日志和页面。从WordPress3.5开始,XML-RPC功能就默认开启了。
如果你不需要这个功能(一般来说你也不会用到这个功能),完全可以关闭它。不然就会成为一些肉鸡的攻击对象,希望暴力破解你的WordPress。
关闭xmlrpc也很简单,只需要在functions.php里加入一行代码:
add_filter('xmlrpc_enabled', '__return_false');
这样xmlrpc就被关闭了。
我是直接在Nginx的配置文件里禁止所有xmlrpc.php请求的:
location = /xmlrpc.php { deny all; access_log off; log_not_found off; }
再去访问your_domain/xmlrpc.php,你就会发现返回403了~
WordPress登录界面跳转
既然你暴力请求我的登录界面,OK,那我就给我的wp-login加一个参数要求,如果没有对应参数或者参数的值不对,那么就会自动跳转到对应的网站:
add_action('login_enqueue_scripts','login_protection'); function login_protection(){ if($_GET['user'] !='me') header('Location: http://www.qq.com'); }
这个函数的意思是只有访问your_domain/wp-login.php?user=me才会到你的登录界面,其他请求全部302到腾讯首页去~其中user和me可以随便你改
Wordfence插件
在做了上面两个步骤后,我也安装了Wordfence这个WordPress的安全插件~可以防文件篡改,通过防火墙规则自动屏蔽正在从事危险行为的访客,有一定的防DDOS能力,防止肉鸡对后台密码进行暴力破解~
直接插件界面搜索Wodrfence就可以安装了,安装量超过100万~
可以看到在禁了xmlrpc功能以及对wp-login登录界面做了跳转后,攻击者今早已经停止了对我的攻击 可能他今天早上起来发现“啥?我访问了一晚上的403和腾讯首页???”
最后,推荐一下腾讯云CDN,服务态度真的好!我昨天12点发工单都是秒回我的~!我还只是他们的免费用户
相关文章