Atlassian Confluence漏洞大杂烩

Posted by caiqiqi on 2019-11-03

CVE-2017-7415:[Confluence]未授权信息泄露(低版本)

官网公告:
https://confluence.atlassian.com/doc/confluence-security-advisory-2017-04-19-887071137.html
官方漏洞追踪:
https://jira.atlassian.com/browse/CONFSERVER-52222
其他信息
https://nvd.nist.gov/vuln/detail/CVE-2017-7415
http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-201704-023
exploit:
https://github.com/allyshka/exploits/blob/c1f5f0dfa2494001e7c3cffabfbf0219b0e35e08/confluence/CVE-2017-7415/README.md

影响范围:
6.0.0 <= version < 6.0.7

cnnvd描述:

Atlassian Confluence 6.0.7之前的6.x版本中存在安全漏洞。远程攻击者可利用该漏洞绕过身份验证,读取任意日志或页面。

直接一个请求:

/rest/tinymce/1/content/<pageId>/draft/diff

可访问任意博客/Pages页面。

比如:
这个页面:http://cqq.com:8090/pages/viewpage.action?pageId=65546
在这里插入图片描述
需要登录才能访问
在这里插入图片描述
而如果通过这个url去访问:
http://cqq.com:8090/rest/tinymce/1/content/65546/draft/diff
可以直接访问到
在这里插入图片描述

调试

查看代码:confluence-6.0.6/plugins-osgi-cache/transformed-plugins/confluence-editor-6.0.6_1487721990000.jar!/com/atlassian/confluence/tinymceplugin/rest/PageResource#getDraftDiff
可以发现这个路径是允许匿名用户访问的:
在这里插入图片描述

附录

看url中出现的:/rest/tinymce/1/content,查了一下tinymce原来是一个富文本编辑器:
在这里插入图片描述

附录

Atlassion产品最近bugs:
https://jira.atlassian.com/browse/JRASERVER-69238?filter=13085
在这里插入图片描述

jira/confluence漏洞复现笔记

当一个jira或者confluence的cve出来的时候,可能当时只有漏洞描述,没有复现步骤,需要自己定位到漏洞点。
我一般是通过

grep -rn "" *

引号里填漏洞所在url,或者类名。
一般会在WEB-INF/web.xml中找到url对应的处理类:
比如我通过官方的描述,知道了CVE-2019-8446的触发点是/rest/issueNav/1/issueTable,那我就搜/rest/issueNav,然后在WEB-INF/web.xml中找到了对应的处理类/过滤器名
在这里插入图片描述
在这里插入图片描述
然后根据过滤器的名字搜索类
在这里插入图片描述
再根据类名定位到具体的文件中,可能是jar包形式,也可能是.class文件形式。
在这里插入图片描述
然后再去IDEA中下断点。

还有一个办法就是直接去日志里查调用栈(如果出错的话)

如果只知道一个关键方法的名字,可以先搜它在哪个jar包中

确定jar包之后, 再用反编译工具将jar包反编译你成java代码,再搜索,确定其具体的路径,定位到具体的文件。

在这里插入图片描述