不相关的程序(Clash for Windows)链接到 FFmpeg 库。它可能是间谍软件吗?

Gua*_* He 10 windows spyware malware proxy ffmpeg

我最近发现我在 Windows PC 上安装的代理程序(Clash for Windows)总是链接到与其功能无关的 DLL。

它的安装目录中有FFmpeg、DirectX、OpenGL和Vulkan的DLL。通过Process Explorer,我确认它确实加载了这样的 DLL(始终是 FFmpeg,但并不总是所有其他三个)。

在此输入图像描述

正如我提到的,它应该只充当代理程序,并且(我能想到的)它加载低级图形 API 的 DLL 的唯一合法原因是为了其 UI 的硬件加速——但我还没有找到里面的相关设置。最重要的是,我想不出有什么理由来证明其加载是合理的FFmpeg

众所周知,FFmpeg 能够将视频流式传输到远程客户端,我怀疑该程序是间谍软件——它使用低级图形 API 来捕获屏幕并通过 FFmpeg 进行流式传输。

这当然是我的猜测。所以我的问题是

  1. 它加载的DLL是否可以以其他我没有想到的合法方式使用?
  2. 有没有办法进一步调查它以获得其是间谍软件的决定性证据?
  3. 该程序仅以普通用户身份在我的电脑上运行。如果它确实是间谍软件,它会造成多大的损害,以及我如何才能减轻损害(例如,作为普通用户,它会留下什么样的后门)?

我真诚地感谢您提供的任何见解以及您提前投入的时间。

use*_*686 29

从应用程序的官方屏幕截图中的整体外观以及 DLL 列表中的 和 的存在en-US.pakGPUCache即,不仅仅是一般的“GPU 缓存”,而是特定的名称),我猜测该程序的接口已编写为使用CEF (可能是Electron ) \xe2\x80\x93 的东西,前者是“Chrome Embedded Framework”,本质上只是将 Chrome Web 浏览器打包成看起来像应用程序的东西,而 Electron 是 CEF+NodeJS。

\n

(现在这是一个非常流行的选项。例如,Discord 通过 Electron 使用 CEF;VSCode 和 Steam 直接使用 CEF;Dropbox 通过 QtWebEngine 使用 CEF...这就是你耗尽 RAM 的原因。)

\n

CEF 实际上是 Chrome-in-a-box,整个应用程序界面是一个 HTML/CSS/JS“网页”,它仍然具有 Chrome 通常具有的相同功能:GPU 加速 HTML 渲染(使用 CSS 着色器和其他奇特的东西),视频播放支持(Chrome 使用 FFMPEG 作为 <video> 标签),等等。

\n

然而,它可能不一定是整个 UI;还有一些应用程序只需要嵌入 Web 视图来实现某些特定目的(例如登录屏幕或帮助文档),而这些应用程序几乎总是通过 QtWebEngine 或 Microsoft 的 WebView2 使用 CEF。

\n

.pak您可以从 CEF用于其内部资产的各种存档文件中识别它;指定的文件夹GPUCache也是 CEF 使用的症状。(目前,我在 Linux 上的用户目录有24 个独立的“GPUCache”目录,每个目录都属于一个不同的应用程序,该应用程序要么完全基于 CEF,要么只是将 CEF 用于某些特定目的。)

\n

  • 小学究注意:[VSCode 仍然使用 Electron](https://i.stack.imgur.com/IXPv3.png),据我所知,目前没有计划放弃它。与此同时,MSTeams 最近确实转向了 Edge WebView2。 (8认同)
  • @GuanyumingHe:如果它是间谍软件,您无法仅从 DLL 列表中确定它。问题是它已经是一个 VPN 应用程序,即其性质所赋予的特权;它可以访问您的网络流量作为_其功能的一部分_ – 这意味着它已经可以监视和转移该流量**无​​需任何额外的 DLL,**只需对其“核心”隧道代码进行小幅更新即可。(更不用说,你已经允许它安装 TAP 驱动程序的副本,如果你不知道它来自哪里,那么风险就更大了——至少希望它是官方的 OpenVPN 驱动程序。) (4认同)
  • 是的,但即使是代理中继仍然可以直接访问您通过它发送的流量...... (3认同)