zoukankan      html  css  js  c++  java
  • 米拓建站系统1day审计与利用

    Metinfocms命令执行

    前话:

    米拓企业建站系统是一款由长沙信息科技有限公司自主研发的免费开源企业级CMS,该系统拥有大量的用户使用,及对该款cms进行审计,如果利用CNVD-2021-01930进行进一步深入,其危害的严重性可想而知。

    本文涉及相关实验:MetInfo SQL注入 (通过该实验掌握MetInfo SQL注入漏洞的原因和利用方法,以及如何修复该漏洞。)

    审计过程:

    1. Index:拿到源码先看根目录的index.php看看都包含(加载)了什么文件。

    2. 关键词:在/app/system/entrance.php看到了配置文件的定义,全局搜索这个

    ’PATH_CONFIG‘参数。

    全局搜索并找到install/index.php文件下有这个参数,点击跟进查看。

    在这个文件的219行有个是接收db数据库参数的方法。

    官方说明“$_M”数组:https://doc.metinfo.cn/dev/basics/basics75.html

    这里是接收from数据的db_prefix参数。也就是“数据表前缀”内容的值。

    往下发现是直接写入tableper然后赋值给config变量。

    并在264行fopen打开/config/config_db.php进行没有安全过滤的字节流(fputs)方式的写入。

    影响版本:7.3.0 - 7.0.0

    一、进行7.3.0安装步骤,访问http://127.0.0.1/install/index.php

    二、选中传统安装继续下一步

    三、数据库信息进行写shell

    代码执行Payload:"/@eval($_GET['1']);/

    命令执行Payload:"/@system($_GET['1']);/

    代码执行:

    点击保存进行下一步验证,出现这报错信息,可以查看configconfig_db.php文件。

    成功写入

    命令执行:

    7.0.0版本:

    7.1.0版本:

    Payload:"/@eval($GET['1']);@system($GET['2']);/

    7.2.0版本:

    Payload:"/@eval($GET['1']);@system($GET['2']);/

    1

    合天智汇:合天网络靶场、网安实战虚拟环境
  • 相关阅读:
    区块链学习一
    loadrunner json参数化
    python造数
    loadrunner json中文无法识别问题
    mysql慢查询
    loadrunner请求json数据参数化问题
    调用短信接口的原理流程,以及入参和返回值分别是什么?
    Linux
    MySql
    nginx负载均衡
  • 原文地址:https://www.cnblogs.com/hetianlab/p/14959872.html
Copyright © 2011-2022 走看看