1、问题发现
在查看网站攻击信息,发现一个时间段流量徒增,猜测可能有攻击,记下当时的时间点,并截图
这是百度免费cdn的免费统计信息,可见今天早上1点到2点有异常流量。
2、问题定位
(1)分析网站access的日志,分析1点日志
1
|
perl –lne ‘/\[16\/Feb\/2016:01/ and print’ access_nginx.log
|
可见确实有大量不同寻常的访问,可判断为对xmlrpc.php的攻击。
(2)对来源ip进行定位并统计次数
1
|
perl –lne ‘/\[16\/Feb\/2016:01/ and print’ access_nginx.log|perl –lane ‘print $F[0]’|sort|uniq –c|sort –n
|
可以明确看到是这两个ip在攻击,来源地都是美国
(3)对两个ip单独分析,分析其行为
1
|
perl –lne ‘/141.101.75.65/ and print’ access_nginx.log|head –n 10
|
可见,这两个ip先通过搜索文章作者(访问/?author=x),找到用户名,然后对用户名和密码进行尝试攻击。
3、处理和后续扩展
首先对两个ip进行封禁
1
2
|
iptables –I INPUT –s 141.101.75.65 –j DROP
iptables –I INPUT –s 162.158.90.40 –j DROP
|
由于xmlrpc.php并没有实际中用到,直接删除,或者改名。
当然可以写一个自动处理脚本根据日志判断攻击ip,然后自动封禁,作为一个可持续的方案不错。
4、关于wp防护
注意多升级,可以尽可能的消除安全漏洞。
注意不用系统默认的用户。
用一些安全插件比如WPSecurty Scan,Better wp Securiry 等
可以用一些开源ids,比如snort等。