是否有明显的方法可以将(Linux)用户的进程分成不同的组,每个组都有自己的安全域。
提出这个问题的动机如下:
- 我通常会在密码管理器运行时至少解锁一个数据库
- 我是一名软件开发人员,经常运行来自“不受信任”来源的代码(例如,
pip install matplotlib
可以做我的用户可以做的任何事情,它往往表现良好) - 我不希望大多数程序(例如
pip
或其运行的脚本)能够与密码管理器交互 - 我希望能够跑步一些与我的密码管理器交互的代码,例如获取网站密码,并将其发送到我的浏览器
屈贝斯通过在自己的 VM 中运行每个程序(例如通过 KVM)来解决这个问题,但我不想走那么远。我对运行的代码非常谨慎,仍然希望一些程序能够通过 Unix 域套接字等相互通信。
我所说的分离是指拥有几个(实际上可能更多)安全域:
- 第一个是“值得信赖”的人您登录的地方,您的窗口管理器在那里运行,密码管理器等等。
- 第二个是大多数其他事情发生的地方,例如,这是我运行执行
pip
上述命令的 shell 的地方
密码管理器交互将发生在“受信任”域中,例如,可以将键盘事件插入第二个域以输入密码。
这是一个已解决的问题吗?我应该搜索什么?这是否更适合https://stackoverflow.com/?