我有一个WordPress网站受到以下HTTP POST请求的攻击:
x.x.x.x - - [15/Jul/2013:01:26:52 -0400] "POST /?CtrlFunc_stttttuuuuuuvvvvvwwwwwwxxxxxyy HTTP/1.1" 200 23304 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
x.x.x.x - - [15/Jul/2013:01:26:55 -0400] "POST / HTTP/1.1" 200 23304 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
攻击本身并不足以打倒Apache,但它确实提高了CPU使用率,而不是我喜欢它。因此,我想使用mod_rewrite阻止这些 - 直接到403页应该这样做 - 但到目前为止我还没有任何运气,我已经尝试过了。我想阻止所有空白的HTTP POST请求(到 / )以及 /?CtrlFunc _ *
我现在所做的解决方法是阻止所有HTTP POST流量但不会长期工作。
有什么想法吗?我已经投入了几个小时,并没有取得多大进展。
谢谢!
答案 0 :(得分:0)
我不会通过mod_rewrite阻止请求,而是将其用作诱饵来记录违规者的IP。然后,将它们添加到防火墙内的96小时黑名单中将阻止来自它们的所有请求。
请参阅Fail2ban。
具体来说,我相信Fail2ban过滤器是开始寻找特定于网址的案例的正确位置。
http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Filters
http://www.fail2ban.org/wiki/index.php/HOWTO_apache_myadmin_filter
答案 1 :(得分:0)
这是Fail2ban blog post,它为此POST攻击创建了一个过滤器。