您当前的位置: 首页 >  http

合天网安实验室

暂无认证

  • 0浏览

    0关注

    748博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

CVE-2021-42013  Apache HTTP Server 路径穿越漏洞

合天网安实验室 发布时间:2022-03-03 18:00:00 ,浏览量:0

前言

CVE-2021-42013为目录穿越文件读取漏洞,影响 httpd 2.4.49,CVE编号为CVE-2021-41773, https 2.4.50不完全修复可绕过,如果开启 mod_cgi 则可RCE。

分析

CVE-2021-41773复现分析如下:

利用网上师傅的docker镜像

docker run -p 8080:80 -d --privileged turkeys/httpd:cve-2021-41773

999938e03a6138c74e735d231c3e6ea6.png

环境中有安装好的 pwndbg 插件,直接按步调试即可,这里参考Betta师傅的文章

正文

CVE-2021-41773不完全的修复导致了 CVE-2021-42013

可用的 payload 有

/%2%65./
/%2%65%2e/
/.%2%65/
/%2e%2%65/  
/%2%65%2%65/
/%%32e%%32e/
/%25%32%65%25%32%65/ # 无法生效 ap_normalize_path 不能将 %25 进行url解码处理后为 %

我们注意到 https 2.4.50 中添加了补丁

0569a5bc1cfbe9fb75e5dc94b7521b03.png

添加的补丁是对 .%2e 和 %2e%2e 进行了校验,但是我们在 request.c 中注意到还会调用 ap_unescape_url 来对 url 进行又一次的编码,所以通过两次编码就可以绕过

827202bb69d524ab1cf5970a1c9c480d.png

request.c::ap_process_request_internal

4e19c30acb353873c8d0a15e709c6418.png

util.c:ap_normalize_path

a28346ab6a1ef4cb39b719340b102bda.png

返回结果为一次编码后的结果

7c7fc327a1b6a91a9d4f3eb6b55b25bd.png

util.c:ap_unescape_url

b4b40c04b2a8a0476d60ed8fa23b1174.png

util.c:ap_unescape_url

405dee33416b6e7d918d87a096c6f6e5.png

我们看到此时保存值的指针地址 0x7fa06c00a1f0 ◂— '/cgi-bin/%2e./%2e./%2e./%2e./%2e./etc/passwd'

函数执行结束后 打印出 0x7fa06c00a1f0  对应的值

76d6042e1d03e5ee6aa1060d37deae5a.png

发现已经对 url 进行了再一次的解码

命令执行

在 /etc/httpd/httpd.conf 配置文件中去掉 mod_cgid.so 的注释

71c3d9f35a4890842acba9f4b63ef3f2.png

44b5af119153c11b9664918b060fc0f2.png

结语

至此,CVE-2021-42013的漏洞分析到此结束,如有不当感谢师傅指出!!!

参考链接

https://mp.weixin.qq.com/s/IYbaDLrMJBT0yb4xT3UYWg

原创稿件征集

征集原创技术文章中,欢迎投递

投稿邮箱:edu@antvsion.com

文章类型:黑客极客技术、信息安全热点安全研究分析等安全相关

通过审核并发布能收获200-800元不等的稿酬。

更多详情,点我查看!

8d4e8f25f5cf0e9cf01b021b83e365ad.gif

体验靶场实操,戳“阅读原文”体验

关注
打赏
1665306545
查看更多评论
立即登录/注册

微信扫码登录

0.0384s