The*_*can 27 web-server denial-of-service malware lighttpd apache-2.2
我正在调查Slowloris的漏洞,我想我了解这种攻击的工作原理和原因。
我不明白的是为什么 Lighttpd 和 NginX 不受影响(根据上面链接的同一篇文章)。它们有什么不同?
Smu*_*dge 27
Apache 有一个“最大客户端”理论
这是它可以处理的同时连接数。IE 如果 apache 服务器的“最大客户端”限制为 100,并且每个请求需要 1 秒才能完成,则它每秒最多可以处理 100 个请求。
像 SlowLoris 这样的应用程序会用连接淹没服务器,在我们的例子中,如果 SlowLoris 每秒发送 200 个连接,而 Apache 每秒只能处理 100 个连接,则连接队列将不断变大并用尽机器上的所有内存,将其带到一拖。这类似于 Anonymous 的 LOIC 的工作方式。
NGINX 和 Lighttpd(以及其他)没有最大连接数,而是使用工作线程,因此理论上,它们可以处理的连接数没有限制。
如果您监控您的 Apache 连接,您将看到大多数活动连接是从客户端“发送”或“接收”数据。在 NGINX/Lighttpd 中,他们只是忽略这些请求并让它们在后台运行,而不是耗尽系统资源,它只需要处理正在进行的连接(解析响应、从后端服务器读取数据等)
我今天下午实际上回答了一个类似的问题,所以那里的信息可能对你也很有趣Reducing Apache request queueing
小智 16
Nginx 实际上很容易受到slowloris 攻击。稀缺资源是同时工作连接的最大数量。这个数字可以计算为worker_connections * worker_processes并且在默认 nginx 配置中等于 512。因此,使用goloris 之类的工具可以很容易地删除未受保护的 nginx 。
Ngu*_*Tan 10
应该接受 valyala 的评论作为答案。
大多数nginx服务器使用默认配置,因此容易受到slowloris攻击。我使用slowloris 仅使用我的笔记本电脑就删除了我朋友的一些nginx 网站,通常只用了不到5 分钟(我的朋友向我提出挑战)。
正如 valyala 所说,从技术上讲,nginx 不易受到慢速病毒的攻击,但默认配置限制了最大连接数,因此当连接数超过该数量时,nginx 会丢弃新请求,从而导致拒绝服务。
保护 nginx 免受 slowloris 攻击的已知方法包括限制来自同一 IP 的连接数,以及增加 worker_connections 配置。攻击仍然有效,但会变得更难(可能需要 5 分钟以上?:D)
归档时间: |
|
查看次数: |
12228 次 |
最近记录: |