登陆 注册

[CVE-2021-26085] Confluence /s/路径的信息泄露(受限)

桑云信息Lzers 2021-08-25 CVE-2021-26085漏洞分析WEB安全

漏洞描述

未经认证的攻击者可访问Confluence的WEB-INF和META-INF目录下的任意文件(包括可能的凭据信息)。这个漏洞我理解是CVE-2020-29448补丁的绕过;跟CVE-2019-3394的危害程度一样,最大可能的危害是读取可能存在的atlassian-user.xml文件(泄露LDAP凭据但这种配置方式已被弃用),但是不需要认证。

漏洞详情

/s/路径是Atlassian产品通用的访问静态资源的方法。

Confluence有一个正则

private static final Pattern CACHE_PATTERN = Pattern.compile("^/s/(.*)/_/((?i)(?!WEB-INF)(?!META-INF).*)");

用于避免WEB-INF和META-INF目录下文件被读取。

CVE-2020-29448的作者发现可以通过url编码绕过这个正则,实现WEB-INF和META-INF目录下的文件读取。

Atlassian修复它的方式是在进行正则判断前,对payload先url解码。

但是我发现可以通过两次url编码来绕过,于是提交给了Atlassian官方,不过看这个CVE-2021-26085的官方页面,好像CVE-2020-29448的作者也发现了?

这次Atlassian的修复方式是用一个for循环判断只要uri还可以被解码就继续解码。

   private String decodeURL(String url) {
        String decodedUri;
        for(decodedUri = HtmlUtil.urlDecode(url); HtmlUtil.shouldUrlDecode(decodedUri); decodedUri = HtmlUtil.urlDecode(decodedUri)) {
        }

        return decodedUri;
    }

影响版本

[ ,7.4.10) 

[7.5.0, 7.12.3)

漏洞演示

参考

  • https://jira.atlassian.com/browse/CONFSERVER-67893

  • https://nvd.nist.gov/vuln/detail/CVE-2021-26085

  • https://nvd.nist.gov/vuln/detail/CVE-2020-29448

  • https://nvd.nist.gov/vuln/detail/CVE-2019-3394




相似的Jira的信息泄露参考 陈师傅的知识星球:

https://t.zsxq.com/bAaiUfa

文由shadowsock7

生成海报
请发表您的评论
桑云信息Lzers

桑云信息Lzers

乐山桑云信息技术有限公司专注于企业安全与网站、小程序、APP架设,为企业客户提供一站式解决方案,帮助企业快速实现互联网+转型。
907文章数 31评论数
请关注微信公众号
微信二维码
不容错过
Powered By SangYun.Net