【问题标题】:Blocking HTTP POST attack via mod_rewrite通过 mod_rewrite 阻止 HTTP POST 攻击
【发布时间】:2013-09-18 02:57:03
【问题描述】:

我有一个 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 流量,但这不会长期有效。

有什么想法吗?我在这方面投入了几个小时,但没有取得太大进展。

谢谢!

【问题讨论】:

标签: php wordpress apache mod-rewrite


【解决方案1】:

我不会通过 mod_rewrite 阻止请求,而是将其用作诱饵来记录违规者的 IP。然后,将它们添加到防火墙内的 96 小时黑名单将阻止来自它们的所有请求。

Fail2ban

具体来说,我相信 Fail2ban 过滤器是开始寻找编写特定 url 案例的正确位置。

http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Filters

http://www.fail2ban.org/wiki/index.php/HOWTO_apache_myadmin_filter

【讨论】:

  • 我已安装 CSF - 我不介意完全阻止 IP。您能否建议一种简单的方法来提取有问题的 IP 地址并阻止它们(“csf -d ipaddress”会阻止它们,我只是不确定如何自动化该过程) - 谢谢!
  • 我不知道如何结合这两个应用程序......但这里有一些想法:forums.cpanel.net/f43/…
【解决方案2】:

这是一个 Fail2ban blog post,它为此 POST 攻击创建过滤器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-05
    • 1970-01-01
    • 1970-01-01
    • 2015-11-10
    • 2011-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多