CVE-2021-47822CVE-2021-47822是存在于DiskBoss Service 12.2.18版本中的一个高危本地权限提升漏洞。该漏洞的根本原因在于Windows服务配置中的二进制路径未使用引号包裹,导致路径解析存在歧义。当Windows服务启动时,如果服务路径没有正确使用引号包围,操作系统会从第一个空格处截断路径并尝试查找并执行该位置的程序。攻击者可以利用这一特性,在服务路径中的中间目录放置恶意可执行文件,从而在服务重启或系统启动时以SYSTEM高权限自动执行恶意代码。由于DiskBoss服务通常以系统最高权限运行,攻击成功后可获得完全的系统控制权。此漏洞需要攻击者具备本地访问权限和低权限用户身份,但无需任何用户交互即可实现攻击。该漏洞的CVSS评分达到7.8分,属于高危级别,对企业内网安全构成严重威胁。攻击者可能利用此漏洞从普通用户权限提升至系统管理员权限,进而在内网中横向移动或部署后门程序。
该漏洞属于Windows服务路径解析安全问题的经典类型。DiskBoss服务在Windows服务控制管理器中注册时,其ImagePath注册表键值未使用引号包围包含空格的路径。当Windows服务启动时,SCM(Service Control Manager)会调用CreateProcess函数执行服务二进制文件。CreateProcess在解析路径时,如果遇到空格会从第一个空格处分割字符串,然后依次尝试查找是否存在与分割后路径同名的可执行文件。例如,如果服务路径为C:\Program Files\DiskBoss\bin\diskbsa.exe,Windows会依次尝试执行:C:\Program.exe、C:\Program Files\DiskBoss.exe等。攻击者只需在C:\目录下放置名为Program.exe的恶意程序,当服务启动时就会以SYSTEM权限执行该恶意文件。攻击者需要具备在系统目录创建文件的权限(通常低权限用户可以通过在特定目录创建文件来实现),并且需要等待服务重启或系统重启才能触发漏洞利用。成功利用后可获得与DiskBoss服务相同级别的SYSTEM权限,实现完全的系统入侵。