CVE-2025-62185CVE-2025-62185是Ankitects Anki闪卡学习软件中存在的一个安全漏洞,影响25.02.5之前的所有版本。该漏洞源于Anki在处理共享牌组(shared deck)时,对媒体文件夹中的可执行文件缺乏有效验证。攻击者可以制作一个恶意的共享牌组,将名为youtube-dl.exe、yt-dlp.exe或yt-dlp_x86.exe的可执行文件放置在牌组的媒体文件夹中。当用户导入该共享牌组并在牌组中遇到YouTube链接时,Anki会自动执行这些伪装成YouTube下载器的恶意可执行文件,从而导致远程代码执行。
该漏洞的CVSS 3.1评分为6.7,属于中等严重等级。虽然攻击向量为本地(AV:L),但攻击复杂度较高(AC:H),且无需认证(PR:N)和用户交互(UI:N)。一旦利用成功,攻击者可以获得与Anki进程相同的权限,对系统的机密性(C:H)和完整性(I:H)造成严重影响,但不会影响系统可用性(A:N)。
Anki是一款广泛使用的开源间隔重复学习软件,全球拥有数百万用户。该漏洞的潜在影响范围较大,因为共享牌组是Anki社区的核心功能之一,用户经常从AnkiWeb或其他来源下载和导入他人制作的牌组。如果攻击者将恶意牌组上传到公共牌组共享平台,可能导致大量用户遭受攻击。Anki官方已在25.02.5版本中修复了该漏洞,建议所有用户尽快升级到最新版本。
Anki的共享牌组(.apkg文件)本质上是一个包含牌组数据和媒体文件的压缩包。当用户导入共享牌组时,Anki会解压其中的媒体文件到collection.media文件夹中。Anki内置了对YouTube链接的特殊处理功能,当检测到卡片内容中包含YouTube链接时,会尝试调用YouTube下载工具(如youtube-dl或yt-dlp)来下载视频内容。
漏洞的根本原因在于Anki在查找和执行YouTube下载器时,未对可执行文件的来源、签名或完整性进行验证。具体而言,Anki会在媒体文件夹及其相关路径中查找名为youtube-dl.exe、yt-dlp.exe或yt-dlp_x86.exe的可执行文件并执行它们。攻击者利用这一机制,在制作恶意共享牌组时,将一个精心构造的可执行文件命名为上述名称之一,并放入牌组的媒体文件夹中。
当受害者导入该恶意牌组后,媒体文件被解压到本地媒体目录。随后,当用户浏览包含YouTube链接的卡片时,Anki会在媒体目录中查找YouTube下载器,优先找到攻击者植入的恶意可执行文件并执行它。由于可执行文件以Anki进程的权限运行,攻击者可以执行任意代码,包括窃取用户数据、安装后门或进行其他恶意活动。
该漏洞的利用需要满足以下条件:1)受害者导入恶意共享牌组;2)牌组中包含YouTube链接的卡片;3)受害者的操作系统为Windows(因为涉及.exe文件)。虽然攻击复杂度较高(AC:H),但整个过程对用户透明,无需额外交互。