sudo 用户能否读取启用了 sudo 访问权限的命令文件?

问题描述

我有一个普通的 Linux 用户说 user1 ,它有对命令 /usr/local/bin/command.sh 的 sudo 访问权限。

/usr/local/bin/command.sh 有 700 权限。因此因此 user1 能够成功运行

sudo /usr/local/bin/command.sh

现在我想知道使用 sudo 命令会进行权限提升。他是否有可能读取 /usr/local/bin/command.sh 的内容? sudo 的设计是一种非常严格的基于命令的实现吗?

解决方法

一个字的答案是:不。

(...) 因此 user1 能够成功运行 (...)

严格来说,不是 user1 正在运行该可执行文件,而是用户切换到使用 sudo(在您的情况下为 root),当然他也可以读取该文件。现在,如果通过 sudo 运行的可执行可执行文件存在漏洞,您可以利用该漏洞读取任意文件。文件,但这会糟糕