2022-03-27 13:04:27
禅道12.4.2后台管理员权限Getshell的原理及过程如下:
漏洞成因
禅道12.4.2版本的client类中download方法存在过滤不严谨问题,攻击者可利用FTP协议绕过文件下载限制,将恶意PHP文件上传至服务器可解析目录(如data/client/),最终实现Getshell。该漏洞的核心在于:
漏洞复现步骤
环境准备:
部署禅道12.4.2至PHP环境(如phpstudy2018),配置数据库并完成安装。
开启FTP服务(以Windows 2008 R2为例),在IIS中添加FTP站点,并确保可访问。
将恶意PHP文件(Webshell)上传至FTP目录。
构造恶意链接:
将FTP路径(如ftp://192.168.3.200/shell.php)进行Base64编码,得到ZnRwJTNBLy8xOTIuMTY4LjMuMjAwL3NoZWxsLnBocA==。
使用EXP工具或手动构造请求,将编码后的字符串嵌入URL:
触发漏洞:
访问上述URL,禅道会通过FTP下载恶意文件并存储至data/client/1/目录。
访问
修复方案
升级至禅道12.4.3及以上版本:官方已修复该漏洞,通过加强download方法的输入校验,禁止FTP协议下载并限制文件存储路径的解析权限。
注意事项