如何缓解 Xorg 的键盘记录问题?

如何缓解 Xorg 的键盘记录问题?

我的计划是:

  • 关闭对所有套接字的监听,并通过以下命令启动X:(Xorg -nolisten tcp -nolisten inet -nolisten inet6 -nolisten unix -nolisten local :0 -seat seat0 vt7 -novtswitch尽管我不知道如何在没有此配置的情况下完全阻止X运行)

  • 无根运行 Xorg - 考虑到我不想使用 GNOME 或 GDM,这比看起来要困难得多。目前我正在使用 LightDM 和 XFCE。我确实设法让无根 Xorg 在 SDDM 上工作,但它有很多问题。这种疯狂的行为再次让我感到困惑。

  • FireJail 主 X 服务器,仅允许通过特定输入(键盘、鼠标、屏幕、Xephyr)进行通信。因此,为此我会阻止除这些应用程序/设备之外的任何直接与 X 服务器对话的内容,从而强制 GUI 应用程序使用 Xephyr 的代理。它还应该将所有内容都放在沙箱中,以期防止可能的零日攻击。

  • 在应用程序和 X 服务器上通过 FireJail 使用 seccomp 命名空间来尝试进一步隔离所有内容

然而,实施这些措施的现实比我想象的要困难得多,正如我所看到的 FireJail 和 Xephyr 仍然无法阻止键盘记录。我应该在上面的列表中添加什么内容吗?如果我们能够在此线程中编制一个所有可能修复的列表,以帮助其他可能也遇到同样问题的人,那就太好了。

你们采取了哪些保护措施来防止 X11 和 Xorg 上的键盘记录(和其他问题)?这是一个巨大的问题,几乎影响每台运行 Linux 的 GUI 计算机,所以我绝对不能也不相信有什么办法可以阻止这个问题,因为这是一个臭名昭著的问题。

真的很想听听大家的想法。

答案1

一般来说,不运行“恶意软件”可以保护您免受此类问题的影响。如果您必须运行 Xorg 并且非常关心该特定问题,您可能需要考虑在不同的TTY服务器上简单地运行多个服务器(不适用于登录)。

我还没有尝试过这个,但应该可以startxfce4在多个上运行TTYSystemd 目前不支持每个用户多个会话。

所以你可以在没有 systemd 的情况下生成这些会话。此外,您将需要单独的文件,例如.Xauthority.这是我能想到的唯一未经测试的解决方案。有了这个,你应该获取多个桌面会话不应该能够互相沟通。

但是,对于多个用户(每个会话 1 个用户),您仍然可以使用 systemd,只需进行最小的更改。它也不是最佳的,但也应该有效。

请记住,让您的 DE 不使用 systemd 和常规配置可能需要一些工作,并且可能需要非 systemd 系统。

但是,当您想要运行“恶意软件”时,这将不是唯一/最不关心的问题,您可能希望在硬件方面隔离系统。

相关内容