nmap vuln 脚本检测到 Ubuntu Web 服务器中的漏洞“Apache byterange filter DoS http-vuln-cve2011-3192”,但服务器上未安装 apache2

nmap vuln 脚本检测到 Ubuntu Web 服务器中的漏洞“Apache byterange filter DoS http-vuln-cve2011-3192”,但服务器上未安装 apache2

我正在运行 Ubuntu 20.04 LEMP(Linux、Nginx、MariaDb、PHP)网络服务器。我还在从我的 MacOS 客户端机器上进行一些 nmap 漏洞测试。在 MacOS 上,我使用哦我的天啊!启用nmap插件后。为了从我的 MacOS 客户端机器上对我的 Ubuntu Server 进行一些漏洞测试,我发出了以下命令:

nmap_check_for_vulns my.server.ip.address

这是

nmap --script=vuln

在使用我的服务器的 IP 地址发出命令后,nmap 报告了以下内容:

| http-vuln-cve2011-3192:
|   VULNERABLE:
|   Apache byterange filter DoS
|     State: VULNERABLE
|     IDs:  CVE:CVE-2011-3192  BID:49303
|       The Apache web server is vulnerable to a denial of service attack when numerous
|       overlapping byte ranges are requested.
|     Disclosure date: 2011-08-19
|     References:
|       https://www.tenable.com/plugins/nessus/55976
|       https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-3192
|       https://www.securityfocus.com/bid/49303
|_      https://seclists.org/fulldisclosure/2011/Aug/175

在 Ubuntu Server 上,输出为ss -lnpt

State                     Recv-Q                    Send-Q                                       Local Address:Port                                         Peer Address:Port                    Process
LISTEN                    0                         100                                                0.0.0.0:25                                                0.0.0.0:*
LISTEN                    0                         511                                                0.0.0.0:443                                               0.0.0.0:*
LISTEN                    0                         4096                                             127.0.0.1:8125                                              0.0.0.0:*
LISTEN                    0                         100                                                0.0.0.0:4190                                              0.0.0.0:*
LISTEN                    0                         4096                                             127.0.0.1:19999                                             0.0.0.0:*
LISTEN                    0                         100                                                0.0.0.0:993                                               0.0.0.0:*
LISTEN                    0                         4096                                             127.0.0.1:10023                                             0.0.0.0:*
LISTEN                    0                         4096                                             127.0.0.1:10024                                             0.0.0.0:*
LISTEN                    0                         100                                              127.0.0.1:10025                                             0.0.0.0:*
LISTEN                    0                         4096                                             127.0.0.1:10026                                             0.0.0.0:*
LISTEN                    0                         80                                               127.0.0.1:3306                                              0.0.0.0:*
LISTEN                    0                         100                                                0.0.0.0:587                                               0.0.0.0:*
LISTEN                    0                         128                                                0.0.0.0:43211                                             0.0.0.0:*
LISTEN                    0                         511                                              127.0.0.1:6379                                              0.0.0.0:*
LISTEN                    0                         4096                                             127.0.0.1:783                                               0.0.0.0:*
LISTEN                    0                         100                                                0.0.0.0:143                                               0.0.0.0:*
LISTEN                    0                         511                                                0.0.0.0:80                                                0.0.0.0:*
LISTEN                    0                         4096                                               0.0.0.0:10000                                             0.0.0.0:*
LISTEN                    0                         100                                                0.0.0.0:465                                               0.0.0.0:*
LISTEN                    0                         128                                                0.0.0.0:43219                                             0.0.0.0:*
LISTEN                    0                         256                                                0.0.0.0:53                                                0.0.0.0:*

我正在尝试关闭服务器上的这个漏洞,但是,我没有在服务器上安装 apache,所以我不知道为什么会出现这个漏洞!

我的问题是,如何找到存在漏洞的程序,以及如何关闭服务器上的漏洞?

答案1

检查ss -lnpt哪个进程正在监听端口 80 或 443,这很可能是目标。

答案2

古老的 查看并非特定于 apache2,它仅特定于缓解 apache2 上的此类 DoS 表面的一种特定方法。Nginx 不采用它:它默认满足大量单独范围的请求,但仅受标头大小限制。理论上,它(或任何按原样转发标头的内容)可能容易受到奇怪请求的过度资源使用的影响。

max_ranges number;
Default:  —
Context:  http, server, location

该指令出现在1.1.2版本中。

限制字节范围请求中允许的最大范围数。超出限制的请求将被视为未指定字节范围。默认情况下,范围数不受限制。零值将完全禁用字节范围支持。

它的问题远没有那个可以用来使 Apache 服务器过载的特定技巧那么严重。只要您的 nginx 没有在其他地方进行代理(或依赖于从缓存而不是代理来处理大多数请求),您可能不需要做任何事情,即使您没有使用该设置专门添加限制。

如今,网络服务器(2011 年之后维护的)漠视请求的范围大小总和超出了总内容长度- 一些在现实世界中很少应用的东西,所以比限制更好的缓解措施数字的范围。

无论如何……您可以从命令行手动编写这种烦人的请求。整个漏洞利用过程是发送一个请求,请求的标头包含数百个重叠范围,例如Range: bytes=1-1337,1-1338,1-1339等等。观察响应(状态为 206;如果您看到 200,则 nginx 刚刚忽略了您的标头并返回了所有内容)是否明显变慢,然后您就会知道答案。

相关内容