ba12b04ef8a4280f0ea2f72e801491a1.png

1、前言

百度云安全团队监测到禅道官方发布了文件上传漏洞的风险通告,该漏洞编号为CNVD-C-2020-121325,漏洞影响禅道<=12.4.2版本。登陆管理后台的恶意攻击者可以通过fopen/fread/fwrite方法读取或上传任意文件,成功利用此漏洞可以读取目标系统敏感文件或获得系统管理权限。我们对漏洞进行了复现和分析,由于需要登录后台才可以利用,实际风险相对较低,建议受影响的禅道用户尽快升级到最新版。

2、漏洞分析

下载12.4.3版本和12.4.2版本源代码进行对比,发现module/client/ext/model/xuanxuan.php新增了如下代码:

dc1fc78c320c6d7417f8d94f4a3bfcb2.png

分析downloadZipPackage方法,该方法传入版本参数和link地址,将link地址base64解码,判断是否为http或者https协议,如果是则不通过,这里可以将link大写并进行base64编码来绕过,代码片段如图:

cb16f5624744c28a7d5dba9324e51bf5.png

跟进parent::downloadZipPackage方法,文件module/client/model.php中,获取link传入的文件名,通过fopen打开该文件,写入禅道目录www/data/client/version参数/,如图:

cb48fc65d5f8616459abf4d94ce9441f.png

后续找到/module/client/control.php文件中的download调用了漏洞方法,如图:

1b4475169d67ab6fb4881cd536b3e61b.png

综合以上分析,可以构造利用请求获取webshell,如图所示:

4b3d5bd4dd711679933d54dadd5cd083.png

访问上传文件的地址,如图:

465d22bd7118cec024e7a8328361a414.png

3、修复建议

升级到12.4.3版本,安全版本下载地址:

https://www.zentao.net/download/zentaopms12.4.3-80272.html

百度高级威胁感知系统,以及智能安全防护溯源产品已支持对该漏洞的检测和防御,有需要的用户可以访问anquan.baidu.com联系我们。

推荐阅读

通达OA 11.5版本某处SQL注入漏洞复现分析

从CVE-2020-8816聊聊shell参数扩展

Shiro rememberMe反序列化攻击检测思路

Spring Boot + H2 JNDI注入漏洞复现分析

a4e982b8d4f703a016f7eca1da34e51c.png8b8606740056fe550f00b4dbd60521ec.pnga6da4e2abdb3e83b8bb1e39c7769b0ad.gif
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐