fiyocms 2.0.6.1版本漏洞复现及分析

0x00 前言

0x01 任意文件上传

1.漏洞复现

漏洞位置:Dashboard》Themes》default》Files
在这里插入图片描述
点击Simpan时抓包,将src参数和content参数修改为新建文件名和其内容
在这里插入图片描述
嗯哼~~
在这里插入图片描述

2.代码分析

位置:\fiyocms/dapur/apps/app_theme/libs/save_file.php
在这里插入图片描述
从27行代码可以看到利用file_get_contents()函数将c参数的内容保存到f参数的文件上,但是没有对f和c进行任何处理,直接通过POST方法传值,从而造成任意文件上传漏洞。

0x02 任意文件读取

1.漏洞复现

漏洞位置:admin》Themes》default》Files
点击index.php时抓包
在这里插入图片描述
修改参数,读取成功
在这里插入图片描述

2.代码分析

位置:/dapur/apps/app_theme/libs/check_file.php
在这里插入图片描述
从第13、14行代码可以看出,通过get方法得到文件路径和文件名后进行拼接直接赋值给$file,再赋值给$furl,然后没有经过任何处理直接在23行通过file_get_contents()方法读取$furl,因此存在任意文件读取漏洞。

0x03 任意文件删除

1.漏洞复现

漏洞位置:admin》Settings》Backup
点击Backup时抓包
在这里插入图片描述
修改file参数
在这里插入图片描述
删除成功~~
在这里插入图片描述

2.代码分析

位置:dapur\apps\app_config\controller\backuper.php
在这里插入图片描述
从第16行代码可以看到,当判断备份类型为database后直接通过unlink函数对文件进行删除,并且文件位置只是通过POST方法传值没有经过任何处理就和../../../../.backup/进行拼接,造成任意文件删除漏洞。

posted @ 2019-12-20 08:52  吃不胖的ruanruan  阅读(573)  评论(0编辑  收藏  举报