处理 Apache 垃圾邮件

处理 Apache 垃圾邮件

我收到大量可疑请求,导致 Apache 使用大量内存(超过 1GB)

[Mon Feb 24 09:48:29 2014] [error] [client 120.37.238.125] PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 76 bytes) in /var/www/wiki/lib/plugins/authplain/auth.php on line 321, referer: http://myserver.com/wiki/clash_of_clans_cheat?do=register

[Mon Feb 24 09:51:01 2014] [error] [client 23.94.23.159] (36)File name too long: access to /wiki/viagra-bestellen_2013_profile_kerstinsheean_how_to_get_no_credit_check_financial_loans_up_to_5000_profile_dawnmillington_profile_gidgetmcwhorter_how_much_ict_is_electronic_healthcare_record_emr_solutions_profile_constancesylves_profile_constancesylves_paying_for_healthcare_equipment_and_treatment failed

这两条消息不断从各个 IP 重复发送(每分钟约 10 条消息)。我该如何防范这种情况?我已经设置了 fail2ban,每 5 分钟禁止超过 40 个 IP...

我使用的是 Ubuntu 12.04.2 LTS 服务器,Apache 2.2 + PHP5.3。服务器上只有一个 Dokuwiki,是私有的,几乎没用过。

答案1

通过查看您发布的两个不同的 IP 地址(一个来自中国,另一个来自美国),我猜测这些是运行脚本攻击的受感染的僵尸网络机器。

如果 Docuwiki 足够私密,您可以阻止它仅响应某些 IP 范围,这可能是您最好的选择。否则...

我不知道你运行的是哪个版本的 Docuwiki,但看起来最近的版本支持不良行为插件。我过去在处理不良行为方面运气不错。(不良行为拒绝来自格式错误的客户端的请求,例如脚本。您可能也需要考虑类似的事情。

答案2

从第一个日志条目来看,您的 Wiki 软件似乎有点问题。它耗尽了服务器内存。

你应该更新你的 Wiki 软件。希望新版本已经修复了内存耗尽问题。

相关内容