IPBUF安全漏洞报告
English
CVE-2020-36974 CVSS 7.8 高危

CVE-2020-36974 Realtek Andrea RT Filters未引号服务路径提权漏洞

披露日期: 2026-01-27

漏洞信息

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

相关标签

未引号服务路径本地权限提升RealtekAndrea RT FiltersAESTSr64Windows服务漏洞高危漏洞路径遍历提权漏洞CVE-2020-36974

漏洞概述

CVE-2020-36974是Realtek Andrea RT Filters软件中的一个高危本地提权漏洞。该漏洞存在于AESTSr64.exe服务的安装路径中,由于路径未使用引号包裹,导致Windows服务在启动时存在路径解析歧义。攻击者可以利用这一特性,在服务启动时劫持执行流程,从而以SYSTEM权限执行任意恶意代码,实现本地权限提升。该漏洞CVSS评分7.8,属于高危级别,需要低权限用户即可发起攻击,且无需用户交互。由于该服务随系统启动自动运行,攻击者可以在系统启动时获得持久化的最高权限。

技术细节

该漏洞的根本原因在于Windows服务配置中的路径解析机制。当一个服务的可执行文件路径包含空格且未使用引号包裹时,Windows会从左到右依次尝试解析路径,直到找到一个存在的可执行文件。具体来说,受影响路径'C:\Program Files\IDT\WDM\AESTSr64.exe'中,Windows首先尝试执行'C:\Program.exe',如果不存在则尝试'C:\Program Files\IDT\WDM\AESTSr64.exe'。攻击者可以利用这一特性,在'C:\Program Files\'目录下放置名为'IDT.exe'或'WDM.exe'的恶意可执行文件,当服务启动时会优先执行这些文件。由于服务通常以SYSTEM权限运行,恶意代码也将以SYSTEM权限执行,从而实现权限提升。攻击者需要具备目标系统的写权限,通常是低权限用户账户。

攻击链分析

STEP 1
步骤1:侦察阶段
攻击者首先识别目标系统上是否存在Realtek Andrea RT Filters软件及其AESTSr64.exe服务。通过检查服务配置或文件系统确认漏洞存在。
STEP 2
步骤2:权限检查
攻击者确认自身具有低权限账户,并验证对中间路径目录(如C:\Program Files\IDT\)具有写入权限。
STEP 3
步骤3:恶意文件部署
攻击者在服务路径的中间目录植入恶意可执行文件,例如在C:\Program Files\IDT\目录下创建名为'IDT.exe'的恶意程序。
STEP 4
步骤4:触发服务重启
等待系统重启、服务更新或其他触发条件导致AESTSr64服务重新启动,或使用系统工具手动重启服务。
STEP 5
步骤5:权限提升
服务启动时,Windows尝试执行'C:\Program Files\IDT\WDM\AESTSr64.exe',首先解析到'C:\Program Files\IDT\IDT.exe'并执行攻击者的恶意代码,以SYSTEM权限运行。
STEP 6
步骤6:持久化控制
恶意代码执行后,攻击者获得系统最高权限,可部署后门、窃取数据或进一步横向移动。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 """ CVE-2020-36974 PoC - Realtek Andrea RT Filters Unquoted Service Path This PoC demonstrates the unquoted service path vulnerability in AESTSr64.exe Note: For educational and authorized testing purposes only """ import os import sys import ctypes import shutil def check_vulnerability(): """Check if the vulnerable service exists""" vulnerable_path = r'C:\Program Files\IDT\WDM\AESTSr64.exe' if os.path.exists(vulnerable_path): print(f'[+] Vulnerable service found at: {vulnerable_path}') return True else: print(f'[-] Vulnerable service not found') return False def check_intermediate_paths(): """Check if intermediate paths are writable""" paths_to_check = [ r'C:\Program Files\IDT.exe', r'C:\Program Files\IDT\WDM\IDT.exe', r'C:\Program Files\IDT\WDM\WDM.exe' ] print('\n[*] Checking intermediate path locations:') for path in paths_to_check: directory = os.path.dirname(path) if os.path.exists(directory): # Check if we can write to the directory test_file = os.path.join(directory, '.write_test') try: with open(test_file, 'w') as f: f.write('test') os.remove(test_file) print(f' [VULN] Writable: {path}') except: print(f' [SAFE] Not writable: {path}') def generate_payload(): """Generate example malicious executable location""" # This would be the malicious executable placed by an attacker malicious_path = r'C:\Program Files\IDT\WDM\IDT.exe' print(f'\n[!] Attacker would place malicious executable at: {malicious_path}') print('[!] When service starts, it will execute this file instead of the legitimate one') print('[!] The malicious code would run with SYSTEM privileges') if __name__ == '__main__': print('CVE-2020-36974 - Realtek Andrea RT Filters Unquoted Service Path') print('=' * 70) if os.name != 'nt': print('[-] This exploit only works on Windows systems') sys.exit(1) if check_vulnerability(): check_intermediate_paths() generate_payload() print('\n[*] Remediation: Quote the service path in Windows Registry') print(' HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AESTSr64')

影响范围

Realtek Andrea RT Filters 1.0.64.7
AESTSr64.exe 在未引号路径 C:\Program Files\IDT\WDM\ 下运行的所有版本

防御指南

临时缓解措施
临时缓解措施:在服务路径的每个空格分隔目录中添加引号保护,确保Windows正确解析完整路径。具体操作:打开注册表编辑器,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AESTSr64项,将ImagePath键值修改为 '"C:\Program Files\IDT\WDM\AESTSr64.exe"'(包含外层引号)。同时检查并限制C:\Program Files\IDT\等中间目录的写权限,防止攻击者植入恶意可执行文件。

参考链接

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