Apache HTTP Server 2.4.49容易受到一个漏洞的攻击,该漏洞允许攻击者使用路径遍历攻击将url映射到预期文档根之外的文件。如果文档根目录之外的文件没有被“require all denied”保护,这些请求就可以成功。众所周知,这个问题是在野外被利用的。

该漏洞

Apache HTTP服务器项目最初是为现代操作系统(包括UNIX和Windows)开发和维护开源HTTP服务器。它提供了一个安全、高效和可扩展的服务器,提供与当前HTTP标准同步的HTTP服务。

缺陷(列为cve - 2021 - 41773)是由Apache HTTP Server 2.4.49中对路径规范化的更改引入的。因此,早期版本不容易受到攻击,配置为“要求全部拒绝”的服务器也不容易受到攻击。

不幸的是,“require all denied”在默认配置中是关闭的。这个设置通常会显示如下错误:

“被禁止的。您没有访问{path}的权限。”

路径遍历攻击

路径遍历攻击是通过发送访问后端或敏感服务器目录的请求来实现的,这些目录应该是未授权用户无法访问的。虽然这些请求通常会被阻止,但该漏洞允许攻击者通过对url使用编码字符(ASCII)绕过过滤器。

使用这种方法,攻击者可以访问服务器上活动的cgi脚本等文件,这可能潜在地揭示可以用于进一步攻击的配置细节。

影响

Apache HTTP服务器项目于1995年启动,自1996年4月以来,它一直是互联网上最流行的web服务器。2021年8月,大约有4900万个活跃网站在Apache服务器上运行。显然,我们不知道每个域名都在使用哪个服务器,但在我们可以确定web服务器的网站中,30.9%的网站使用Apache。

一个Shodan搜索的哔哔计算机显示有超过十万的Apache HTTP Server 2.4.49在线部署,其中许多可能容易被利用。

安全研究人员警告说,管理员应该立即打补丁。

另一个弱点

这个补丁还解决了第二个漏洞cve - 2021 - 41524-在HTTP/2请求处理过程中检测到空指针解引用。这个漏洞允许攻击者对服务器执行拒绝服务(DoS)攻击。这需要一个特别设计的请求。

此漏洞也仅存在于Apache Server 2.4.49版本中,但与第一个漏洞不同的是,据我们所知,该漏洞并未被积极利用。它是在三周前被发现的,上月末得到了修复,现在已经包含在2.4.50版本中。

缓解

所有用户应尽快安装最新版本,但:

  • 还没有安装2.4.49的用户应该在更新周期中跳过这个版本,直接跳到2.4.50。
  • 安装了2.4.49的用户如果不打算快速打补丁,应该配置“require all denied”,因为这可以阻止已经在外界看到的攻击。

可以找到Apache HTTP Server 2.4中完整的漏洞列表在这里

更新,10月8日

Apache已经发布了一个新的补丁。根据2.4.51版本的发布说明…

Apache HTTP Server 2.4.50中CVE-2021-41773的修复不足。攻击者可以使用路径遍历攻击将url映射到由类别名指令配置的目录之外的文件。

该漏洞的新部分列在下面cve - 2021 - 42013.“要求全部拒绝”设置也阻止了使用此漏洞的攻击。该修补补丁了。

保持安全,大家好!