eyoucms后台任意文件上传

0x01:前言

算是开始审计过程的第一个rce,也只是一个后台的漏洞,记录一下审计过程(漏洞已提交cnvd,过了几个月了就公开了)

0x02:前台任意文件删除

官网即可下载cms: https://www.eyoucms.com/

下载安装就可以了,注册一个普通用户

在在Application\user\Controller\Users.php中,即user控制器下


发现了如下代码,第1395-1397行,上传头像后会删除之前的头像文件,未对路径进行过滤

在web目录下创建一个txt文件

点击头像,上传抓包

抓取返回包

发送数据包,到了如下的数据包,直接放包即可

回到目录查看

即可删除文件,这里提到这个漏洞是因为需要结合后面的漏洞使用

0x03:后台配置文件修改到rce

登录系统后台,有修改上传文件后缀的功能

当然后端是白名单限制

打开admin\controller\system.php

image_type固定为了png,jpg,gif文件,无法直接通过后台功能进行修改。

在经过一些的测试之后,发现网站优先缓存里面取这个config,如果缓存里面没有的话,会从数据库ey_config里面取出

下面思路就清晰了,看看有没有一个功能点是可以向数据库里写入内容,且table和内容是可控的

在翻了一下文件之后,在在/api/controller/Uiset控制器中找到了如下功能,可惜的是这个接口必须管理员权限才可操作

可以看到name,value等可控,且对数据库中的字段进行了一个update操作,这个update的值又是可控的,于是可以通过此接口修改控制器中的配置文件

POST:
/EyouCMS/index.php?m=api&c=Uiset&a=synConfigVars&type=text&name=image_type&value=jpg|gif|png|bmp|jpeg|ico|phtml
```

注意header中需要包含:X-Requested-With: XMLHttpRequest

这里可以看到修改上传的是phtml,因为测试发现php会使系统报错,影响网站正常功能

然后登录后台,点击清除缓存,让系统从数据库中取文件


成功添加了phtml后缀,然后正常上传文件

然后前台可以上传phtml文件了


当进行访问的时候

发现网站403了,去看了一眼htaccess

网站对特殊后缀进行了限制,导致我们虽然上传但是仍然无法正常访问

利用前台的任意文件删除,构造文件删除的payload:/../../../../../.htaccess,然后访问这个文件

即可成功,这个htaccess是默认添加的,一般应该不会有开发主动去修改,可以备份一下在进行删除,后面再利用获取的webshell删除即可

发表评论

电子邮件地址不会被公开。 必填项已用*标注