官网公告:
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
可以发现这个路径是允许匿名用户访问的:
漏洞修复
使用6.0.7版本进行测试。
不带Cookie的情况下,发现页面404了。
跟到对应的代码atlassian-confluence-6.0.7/confluence/WEB-INF/atlassian-bundled-plugins/confluence-editor-6.0.7.jar!/com/atlassian/confluence/tinymceplugin/rest/PageResource#getDraftDiff
:
增加了权限校验。若当前用户没有编辑当前页面的权限,则直接响应404。
附录
看url中出现的:/rest/tinymce/1/content
,查了一下tinymce原来是一个富文本编辑器: