|
向日葵远程控制软件爆出过好几个高危漏洞,向日现其中CVE-2022-27252这个命令执行漏洞最典型。葵漏攻击者不需要任何身份验证,洞复只要构造一个特殊的向日现请求,就能在目标机器上执行任意命令。葵漏我花了半天时间在本地搭了个复现环境,洞复过程比想象中曲折。向日现 先准备好靶机:Windows 10专业版,葵漏装上向日葵11.0.0.33162版本。洞复这个版本跑在默认的向日现40000端口上,正好暴露了漏洞接口。葵漏用Nmap扫了一下,洞复端口状态是向日现open,心里就有底了。葵漏漏洞出在`sunlogin_service`这个进程处理特定HTTP请求时,洞复没有正确过滤参数,导致系统命令能被拼接执行。 复现的核心就一行URL——访问`http://靶机IP:40000/cgi-bin/rpc?action=verify-haras`,返回的响应头里会带着一个`verify_string`字段。把这个字符串抓下来,再拼接到另一个接口里,就能拿到系统权限。听起来简单,但我第一次试的时候返回了500错误,排查了半天才发现是防火墙拦了后续的载荷传输。 真正的坑在权限提升这一步。初始拿到的shell是SYSTEM权限,但向日葵服务本身是以普通用户跑的,得先绕过UAC。网上流传的exp直接调用了`cmd.exe /c whoami`,但实际执行时发现输出被重定向到了空设备。改用`powershell -enc`编码命令后,回显才正常出现。 整个过程最耗时的是环境配置。向日葵会检测调试器,一旦发现OD或x64dbg附加进程就自动退出。最后用静态分析加流量抓包的方式绕过了反调试。复现完成后我清理了靶机,因为这种漏洞一旦被利用,攻击者可以完全控制机器,甚至横向移动。 这个漏洞的根因是开发者把用户输入直接拼进了系统调用,典型的CWE-78。向日葵官方在12.0.1版本修复了这个问题,但很多老设备仍然暴露在公网上。搜了一下Shodan,国内还有上千台向日葵服务开着40000端口,其中不少是旧版本。 写这篇复现记录不是鼓励攻击,而是提醒运维人员——远程控制类软件往往是内网的第一道突破口。如果你还在用向日葵老版本,建议立刻升级或者至少把端口限制在内网访问。安全这东西,从来都是事后才觉得重要。 |