Rob*_*Rob 14 logging apache-2.2
我很确定我受到了 Slowloris 的攻击。我设置了一个 iptables 规则来限制到我的网络服务器的最大连接数,但我想知道如何确定它是否真的是 Slowloris 攻击,如果是,我如何找到攻击者的 IP 地址。我真的很想将日志传递给他的 ISP。
谢谢
neo*_*tur 11
1级:简单的slowloris DOS
要查找slowloris攻击者的IP地址,我使用以下命令行:
netstat -ntu -4 -6 | awk '/^tcp/{ print $5 }' | sed -r 's/:[0-9]+$//' | sort | uniq -c | sort -n
Run Code Online (Sandbox Code Playgroud)
这将为您提供每个连接 IP 的活动连接数
如果您受到简单的 DOS 攻击,一个拥有一个或几个 IP 的小孩,拥有 50-100 个(或更多)连接的人很可能是您可以丢弃的慢速病毒攻击者。
这是为了检测和删除(使用 iptables 或您首选的 hlfw )如果您在攻击期间连接到服务器上,它们“实时”。
在 apache 日志中添加处理时间( %D 或 %T 参数)也可能有助于通过分析日志来“事后分析”检测slowloris攻击,如果您的日志中没有此信息,您将无法找到任何有趣的信息. 有关日志配置,请参阅http://httpd.apache.org/docs/current/mod/mod_log_config.html。
级别 2 : 真正的大蜗牛 DDOS
netstat ( 使用 watch netstat for refresh ) 仍然可以帮助您查看某些 IP 只是始终处于连接状态
为了对抗slowloris,在apache上,安装reqtimeout模块并进行设置,例如:
之后,你在 access_log 中看到的每一个 408 都是 99.999% 确定是一个slowloris攻击者IP。
使用 reqtimeout apache 模块,您可以轻松地在一个体面的专用服务器上抵抗数千个 ips 和数千个数据包/秒
iptables 也可以帮助一些类似的事情:
iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 100 -j DROP
Run Code Online (Sandbox Code Playgroud)
小智 5
Slowloris 攻击的工作原理是尽可能慢地发送请求数据。因此,如果您可以测量每个 IP 地址的带宽使用情况,那么如果它低于某个阈值(通过测量已知的慢速病毒攻击中的带宽发现),那么您就知道您受到了攻击。
为了防止攻击,我建议切换您的网络服务器软件。我使用切诺基,它的默认配置具有抵抗力。我无法确定 nginx 是否易受攻击,但 lighttpd 是。我也不能确定使用抗性网络服务器作为代理会有什么不同。
以下是更多信息:http : //ha.ckers.org/blog/20090617/slowloris-http-dos/
| 归档时间: |
|
| 查看次数: |
13493 次 |
| 最近记录: |