漏洞概述 漏洞名称: PCManFM-Qt 允许通过 org.freedesktop.FileManager1.ShowFolders 方法打开任意文件 漏洞描述: PCManFM-Qt 实现了标准的 org.freedesktop.FileManager1 D-Bus 接口。根据规范, 函数应仅接受指向文件夹的 URI 作为参数。然而,PCManFM-Qt 将参数中的 URI 字面解释为文件,并调用 MIME 处理程序查找并启动。如果 URI 指向目录,它会执行用户期望的操作;但如果 URI 指向文件,它会打开该文件。 利用场景: 1. Wine 逃逸: 如果用户足够幸运地安装了带有 Wine 上游包的 Flatpak 应用,可以通过将 EXE 文件放在磁盘上并指向 PCManFM-Qt 来绕过沙箱限制。这是因为 Wine 的 Flatpak 构建版会盲目地运行 EXE 文件。 2. Tor Project 应用: 对于通过 Tor 网络运行应用程序的应用程序(如 Tor Project 的 "onion" 应用),攻击者可以将恶意网络资源引用到磁盘上的文件,并通过 PCManFM-Qt 打开它,从而在非 Tor 网络浏览器中打开该文件。 影响范围: 安装了 PCManFM-Qt 的系统。 使用 Flatpak 和 Wine 的用户。 使用 Tor Project 应用程序的用户。 修复方案: 该漏洞已私下报告给 LXQt 开发人员。 上游开发者认为这是规范合规的行为,因此未将其视为问题。 建议用户检查是否路径是文件或目录,以阻止在特殊情况下进行 I/O 操作。 利用代码 (POC)