Metinfo利用sql注入快速getshell

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 0x00 MetInfo是一个比较的企业建站软件,用户众多。在去年的时候,曾爆出过几个漏洞,有XXE,SQL注入,任意文件读取等,详情见以下链接。印象比较深刻的是两个SQL注入漏洞,一个位于message.calss.php,一个位于feedback.class.php。漏洞都位于前台。只不过第二个洞比较苛刻,每注入一次需要输入一次验证码,利用起来貌似很鸡肋。最近看了一次metinfo,找到一个利用SQL注入写入shell的简便方法,不需要脱裤。 * https://nosec.org/home/detail/1889.html * https://nosec.org/home/detail/1740.html ### 0x01 首先看app/system/include/class/web.class.php文件,在web类的析构函数中,先读取了缓冲区的数据(在加载基础配置文件的时候进行的ob_start(),打开的缓冲区),经过一系列替换操作(几乎无影响)之后赋值给了$output变量,这里缓冲区数据可以理解为打开缓冲区以后调用echo方法输出的数据。 ![](https://images.seebug.org/1552294070098) 接着调用replace_attr方法进行了标签处理,这里也没太大影响。 ![](https://images.seebug.org/1552294087095) 最后进入重点,如果提交的参数metinfonow和$_M['config']['met_member_force']的值相同,则调用file_put_contents函数把上述过程中缓冲区读取的内容写入到$_M['form']['html_filename']文件。这里$_M['form']数组中的内容是$_GET,$_POST,$_COOKIE参数的集合。具体代码就不贴了。也就是说,这里文件名可控,不管改成php,phtm,php5都可以。 ![](https://images.seebug.org/1552294133036)...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息