minicms是一个小型轻便的cms。

代码下载地址:https://sourceforge.net/projects/mini-cms/

语言:PHP

没有数据库支撑,数据库文件直接保存在文件中

stristr() 函数查找字符串在另一个字符串中第一次出现的位置

$smarty->assign:变量输出到模板。assign在这里相当于赋值。这里使用,使得网站前后端分离。

 

直接打开网站源代码,可以发现结构如下图所示:

content:是内容页面,里面包含了上传的文件、图片等相关的信息

css:是样式页面

help:是关于网站的其他的帮助页面

images:是图片页面

plugins:是插件页面,包含了网站需要的插件,例如上传、编辑等

smarty:是一个PHP的模板引擎文件夹

templates:该文件夹中存储着常用程序的模板文件,决定网站的基本结构和射击的样式

在网站根目录下还有一些文件,例如index.php,new.php,login.php等。

minicms2.0代码审计

 

直接放在网站根目录下,安装打开如下图所示:

minicms2.0代码审计

直接页面扫描,可以发现存在robots.txt,phpinfo.php,config.php文件泄露。

反射型XSS

1、index.php页面

查看网页,发现在index.php页面,发现存在输入框,查看元素为:search_term

minicms2.0代码审计

 

通过代码审计,发现是通过request直接带入,而没有进行任何的修改,将输入内容传入页面。

minicms2.0代码审计

minicms2.0代码审计

可以看出,如果要成功进行反射型xss,需要进行标签闭合,构造语句:</strong><script>alert(12345)</ScRiPt><strong> ,成功弹框。

minicms2.0代码审计

 

2、news.php页面

参数:page

发现修改page参数,页面上也会随着参数的变化而变化

minicms2.0代码审计

查看源代码发现,输入的page如果有特殊字符,会被进行了过滤。

minicms2.0代码审计

没有办法进行利用。

 

3、news.php页面

error参数

minicms2.0代码审计

在footer.tpl中,发现error参数。发现对error参数没有进行任何过滤,直接输出,导致弹框。

minicms2.0代码审计

minicms2.0代码审计

minicms2.0代码审计

4、url重定向

url地址:http://localhost/minicms-2.0/login.php

在login.php页面,对editor和password进行了验证

minicms2.0代码审计

如果登录成功,则重定向到phpfile传向的地址。

minicms2.0代码审计

效果如下:

minicms2.0代码审计

5、任意文件删除

在地址:http://localhost/minicms-2.0/plugins/filemanager/files.php下,

在插件里面/plugins/filemanager/files.php中,在没有任何权限控制的情况下,可以访问该目录。

对delete没有控制目录权限导致可以删除文件下的任意文件。

minicms2.0代码审计

minicms2.0代码审计

6、任意文件上传

http://localhost/minicms-2.0/plugins/filemanager/index.php下存在上传文件,并且未对上传文件进行任何过滤,导致可以上传任意文件,上传到目录为/content/files/目录下,可以直接使用菜刀连接。

同样,在imagemanager下,存在上传图片的页面,页面上只能看到上传的jpg文件,.php或者是其他文件,无法看到,但是也是上传成功的,直接使用菜刀连接即可。

代码如下:

minicms2.0代码审计

菜刀结果如下:

minicms2.0代码审计

请多指教,已发地址:https://www.t00ls.net/articles-47837.html
 

 

相关文章: