中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

admin 2024年4月10日10:33:41评论1 views字数 2303阅读7分40秒阅读模式

中间件-Docker

Docker容器是使用沙盒机制,是单独的系统,理论上是很安全的,通过利用某种手段,再结合执行POC或EXP,就可以返回一个宿主机的高权限Shell,并拿到宿主机的root权限,可以直接操作宿主机文件。 它从容器中逃了出来,因此我们形象的称为Docker逃逸漏洞。

判断拿下的shell是否是docker容器:

判断是否存在.dockerenv文件

命令:ls -alh /.dockerenv

查询是否有系统进程的cgroup信息:

命令:cat /proc/1/cgroup

演示:拿下的是宿主机,执行报错,系统进程中没有docker等关键字

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

演示:拿下的是docker容器,有正常数据回显,系统进程中有docker等关键字

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

如果拿下的shelldocker容器的,就要进行docker逃逸来获取宿主机shell,因为在docker容器执行命令影响不到宿主机。虽然docker容器是搭建在宿主机上的,但是docker容器就像是一个独立的虚拟系统一样,在这个独立虚拟系统中执行命令无法影响到另一个真实系统(宿主机)

举个栗子:在docker容器执行一个在home目录下创建一个1.txt文件的命令,查看home目录成功生成1.txt,但是在宿主机的home目录下并不会生成一个1.txt文件

案例:中间件-WebSphere

WebSphereApplication Server 加速交付新应用程序和服务,它可以通过快速交付创新的应用程序来帮助企业提供丰富的用户体验从基于开放标准的丰 富的编程模型中进行选择,以便更好地协调项目需求与编程模型功能和开发人员技能。

WebSphere端口

端口:9080—web(http)应用访问端口、9443—web(https)应用访问端口、9060—管理后台访问端口、9043—管理控制台安全端口、8880—SOAP连接器端口等等。

漏洞探测在8880端口,后台是9060端口,解析是9080端口

案例演示:CVE-2015-7450 反序列化

fofa语法:"websphere" && server=="WebSphere Application Server/7.0" && port="8880"

漏洞环境使用docker自行搭建,vulhubvulfocus都没有此中间件漏洞

拉取镜像:docker pull iscrosales/websphere7

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

启动镜像:docker run -d -p 9060:9060 -p 9043:9043 -p 8880:8880 -p 9080:9080 iscrosales/websphere7

停止镜像:docker stop $(docker ps -aq)

启动漏洞环境

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

直接使用脚本拿捏:https://github.com/Coalfire-Research/java-deserialization-exploits/tree/main/WebSphere

使用python2运行脚本

命令:python websphere_rce.py 目标ip:8880 "命令" --proto 指定请求方式(http/https(默认))

ping dns平台,根据解析记录判断命令是否被执行

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

平台产生dns解析记录,命令成功执行

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

案例演示:弱口令 上传功能拿Shell

产生:在6.x至7.0版本,后台登陆只需要输入admin作为用户标识,无需密码,即可登陆后台。

fofa语法:"websphere" && server=="WebSphere Application Server/7.0" && port="9060"

访问漏洞环境的/ibm/console/目录即可进入WebSphere管理控制台登录接口

利用弱口令登录,常用弱口令:

websphere/webspheresystem/ manager

输入admin成功登录

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

来到控制台,如下图依次点击——然后点击install来到文件上传功能

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

使用哥斯拉生成jsp后门文件

哥斯拉:https://github.com/BeichenDream/Godzilla

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

制作war压缩文件:将生成的jsp压缩为zip,再将zip重命名为war

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

将制作的war文件上传,点击Next

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

一直点击Next,直到下图设置访问路径,我设置为shell,点击Next

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

点击Finish,等待加载完毕,点击Save

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

选择上传的文件,点击Start

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

成功开启shell.war文件访问

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

访问文件需要到特定的访问端口:9080—web(http)应用访问端口、9443—web(https)应用访问端口

我的是http协议,所以使用9080端口访问文件

后门地址:http://目标ip:9080/shell/shell.jsp

使用哥斯拉连接后门

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

对添加的目标右键——进入

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

进入命令执行终端,成功获取shell

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

案例演示:中间件-Jetty-敏感信息泄露

Elipse Jetty是一个开源的servlet容器,它为基于Java的Web容器提供运行环境。

CVE-2021-28164

信息泄露路径:http://目标ip:端口/%2e/WEB-INF/web.xml

CVE-2021-28169

信息泄露路径:http://目标ip:端口/static?/WEB-INF/web.xml

CVE-2021-34429

信息泄露路径:http://目标ip:端口/%u002e/WEB-INF/web.xml

使用vulfocus靶场复现CVE-2021-34429

开启漏洞环境

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

直接访问信息泄露路径,成功获取敏感信息

中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

原文始发于微信公众号(小黑子安全):中间件安全-CVE漏洞复现-Docker+Websphere+Jetty

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月10日10:33:41
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   中间件安全-CVE漏洞复现-Docker+Websphere+Jettyhttp://cn-sec.com/archives/2639885.html

发表评论

匿名网友 填写信息