漏洞信息:
近日Atlassian官方发布了Atlassian Confluence的安全更新,涉及Confluence Server多个漏洞,其中Confluence硬编码用户名密码漏洞(CVE-2022-26138)的POC已被公开,建议受影响用户尽快更新至安全版本,避免受到影响。
Atlassian Confluence Server(简称Confluence)是澳大利亚Atlassian公司的一套具有企业知识管理功能,并支持用于构建企业WiKi的协同软件的服务器版本。其使用简单,能够帮助团队成员之间共享信息、文档写作、集体讨论、信息托送等,打破了不同团队,不同部门之间的信息孤岛僵局。很多知名企业均有使用该协同软件。
在Confluence Server 或 Data Center 上启用Questions for Confluence 应用程序时,它会创建一个用户名为disabledsystemuser的 Confluence 用户帐户。此帐户旨在帮助将数据从应用程序迁移到 Confluence Cloud 的管理员。disabledsystemuser帐户是使用硬编码的密码创建的,并被添加到confluence-users组中,默认情况下允许查看和编辑 Confluence 中的所有非受限页面。知道硬编码密码的远程、未经身份验证的攻击者可以利用它来登录Confluence。
有人已经在 Twitter 上发现并公开了硬编码密码。有关如何修复此漏洞的指导,请参阅下面的修复部分。
如何确定是否受到影响
如果 Confluence Server 或 Data Center 实例具有包含以下信息的活动用户帐户,则会受到影响:
用户:disabledsystemuser
用户名:disabledsystemuser
电子邮件:[email protected]
如果此帐户未显示在活动用户列表中,则 Confluence 实例不受影响。
应对策略:
卸载 Confluence 应用程序不会修复此漏洞。卸载应用程序后,disabledsystemuser帐户不会自动删除。如果已验证 Confluence Server 或 Data Center 实例受到影响,下面列出了两种同样有效的修复此漏洞的方法。
方法 1:更新到 Confluence 的不受攻击版本
将 Confluence 应用程序的问题更新为修复版本:
Questions for Confluence 2.7.x >= 2.7.38
Questions for Confluence 版本 >= 3.0.5
有关如何更新应用程序的更多信息,请参阅Atlassian 的文档。
Confluence 应用程序的问题的修复版本停止创建disabledsystemuser用户帐户,如果已创建,则将其从系统中删除。将数据从应用程序迁移到Confluence Cloud 现在是一个手动过程。
方法 2:禁用或删除disabledsystemuser帐户
搜索disabledsystemuser帐户并将其禁用或删除。有关如何禁用或删除帐户的说明(包括两个选项之间差异的说明),请参阅Atlassian 的文档。
漏洞分析
漏洞版本Confluence安装完后,需要上传安装 Questions 插件:
在上传安装的过程中,将实例化 `UserCreatorServiceImpl` 对象:
其中的 `username` 、 `password` 等参数来自于 `default.properties` ,这些都是硬编码在配置文件default.properties里的:
硬编码的凭证位于受影响插件的 jar 包文件中:
https://packages.atlassian.com/maven-atlassian-external/com/atlassian/confluence/plugins/confluence-questions/3.0.2/confluence-questions-3.0.2.jar
接着在安装过程中会调用 `addPredefinedPermittedDisabledUser`方法 :
完成创建用户操作并写入数据库。完成许可证输入后就可以开始使用:
新增的硬编码用户具有管理员权限:
原文始发于微信公众号(逆向云笔记):Atlassian Confluence硬编码漏洞(CVE-2022-26138)分析