以其他用户身份运行程序有用吗?

xav*_*m02 5 security users

在观看道格拉斯·克罗克福德 (Douglas Crockford) 关于安全性演讲后,他谈到了浏览器如何得到“程序代表谁的利益?”这一问题的正确答案。,我想知道以其他用户身份运行某些程序是否可行并且是个好主意。

我正在运行 Debian,但我想这适用于任何操作系统。

我倾向于相信来自稳定、向后移植和测试存储库的任何东西(如果我不应该告诉我,请告诉我)但是每当我安装其他东西时,这些东西不在这些存储库中,我真的不信任它。从 Maple 等数学程序到 Chrome 等浏览器,再到 Heroes of Newerth 等游戏,我有很多。

由于这让我无法信任自己的操作系统,因此每次我想使用信用卡时,我都会使用 Live CD 启动。

所以我想知道以特定用户身份运行这些程序是否有任何帮助。我对 Chrome 能够看到我在网上所做的一切感到满意,但这就是它必须停止的地方。我对 Heroes of Newerth 看我安装了什么模组、更新它的文件等等都很好,但我不希望它能够访问浏览器的缓存或其他任何东西。

根据我对其工作原理的理解,我将能够以单独的用户身份运行每个不完全受信任的程序,仅授予他们对所需文件的读写访问权限。

这是否可行(例如,我还能控制音量和其他每个用户的事情吗?)?它会增加我想要的那种安全性吗?

预先感谢您的回答。

PS:我已经发现了这个:在 Linux 上执行可能有害的程序

但是虚拟机不适用于视频游戏,我已经在做 live CD 的事情了,但这有点烦人,chroot 的事情似乎过于复杂,因为我需要获取库等,而沙箱只是一个升级 chroot。他说使用用户是没有用的,因为如果你没有设置正确的权限,文件就可以被访问。但是我可以删除除我之外的任何人的读取权限,不是吗?

pet*_*rph 6

使用与拥有数据文件的 uid 不同的 uid 运行程序提供了一些额外的安全性 - 应用程序不应该能够访问数据(或者如果替代用户在同一组中并且您正在使用,则至少不能写入它们umask 0022) . 另一方面,它不太可能保护您免受本地攻击 - 通常您希望替代用户拥有与您的主帐户非常相似的一组权限。因此,它将能够以类似的方式攻击系统,就好像它是用您的主 uid 运行的一样。如果您希望它访问您的文件,您基本上希望在您的帐户下运行它。

就具有 X11 GUI 的应用程序而言,您必须让它们访问您的 X 服务器——它们可能会滥用。为安全起见,您必须在单独的(例如嵌套的)X 服务器下运行它们。

使用替代用户确实不会给您带来太多安全性(正如您在提到的问题中也提到的那样)。

也就是说,虽然偏执并不意味着他们不追你,但你确定你的系统是最薄弱的环节吗?您提到的是电子邮件——您真的完全控制了实际的邮件帐户吗?难道这些保持到只有你知道密码一个高度安全的服务器上,运行在只有一个完全修补邮件服务器和内核,并且仅使用SSL / TLS安全协议将数据传输到你的机器?您是否查看了 SSL/TLS 库的客户端和服务器端的实际实现?您确定您的邮件客户端没有在监视您吗(或者至少它没有安全漏洞)。你的操作系统和内核?你的 UEFI?你的键盘?邮件服务器的 UEFI?(我故意省略了 BIOS,因为它在启动时尽可能不安全。)

另一方面,您是否有理由相信 Waterloo Maple 或 Wolfram Research 正在将后门程序放入他们的软件中?如果您担心这些应用程序可被远程利用,只需将它们与网络断开即可