Featured image of post 迅睿CMS v4.5.4到v4.5.6(目前最新版)文件上传漏洞

迅睿CMS v4.5.4到v4.5.6(目前最新版)文件上传漏洞

迅睿CMS v4.5.4到v4.5.6(目前最新版)

来源

https://www.0daying.com/post-71.html

触发条件

两个条件:

1.迅睿CMS 版本为v4.5.4到v4.5.6(目前最新版)

2.登录后台,且为管理员或具有"应用"->“联动菜单"的管理权限

漏洞描述

后台"应用”->“联动菜单”->“导入"处可上传zip文件,且该处没有对用户上传的zip压缩文件做相应的过滤,导致用户可以上传任意文件

漏洞利用

版本v4.5.4

将要上传的文件压缩为zip格式,然后登陆后台,在具备相关权限的情况下,在"应用”->“联动菜单”->“导入"处直接上传该zip文件,同时上传时必须要抓包,响应包中会返回上传的文件的物理路径

响应包中返回的物理路径通常为*/cache/temp/*.zip,而通过该漏洞上传的zip文件在上传成功后会自动解压,自动解压的过程中会自动在zip文件的同目录下创建一个名为压缩包去掉后缀名的文件名的目录,再将压缩包内的文件解压到此目录,因此,通常情况下如果上传一个名为webshell.zip,且压缩包内有一个名为webshell.php的文件的压缩包,那么,通过该漏洞上传zip文件之后,压缩包内的webshell.php文件的物理路径为*/cache/temp/webshell/webshell.php,通过url访问为http://domain:post/cache/temp/webshell/webshell.php

版本v4.5.5和版本v4.5.6(目前最新版)

相比版本v4.5.4,这两个版本增加了对压缩包内文件的检测,但是此处我们先不尝试绕过相应的检测,而是尝试另一个更为简单的方法

这两个版本未对压缩包内的文件夹进行递归检测,因此只要把恶意文件放在文件夹内再压缩然后上传即可

相比版本v4.5.4,在上传该zip压缩文件时依旧可以通过抓包获取文件的物理路径,同时因为增加了一层文件夹,相应的解压之后的压缩包内的文件的物理路径变为*/cache/temp/linkage/webshell/webshell/webshell.php,url变为http://domain:post/cache/temp/linkage/webshell/webshell/webshell.php

POC && EXP

很简单,我就不写了,不过注意目标站点的cms可能有坑,比如版本号低但实际的站点文件已经更新过了

POC

登录后台,获取版本号,然后验证一下是否为管理员或具有"应用”->“联动菜单"的管理权限即可

EXP

登录后台,然后在"应用”->“联动菜单”->“导入"处上传zip文件

2u94 4 4un
Built with Hugo
Theme Stack designed by Jimmy