XPDIN Asked: 2017-06-11 04:17:39 +0800 CST2017-06-11 04:17:39 +0800 CST 2017-06-11 04:17:39 +0800 CST 在“/etc/sudoers”中添加“Defaults secure_path="/home/username" 可能存在风险 772 这可能是要增加的风险 Defaults secure_path="/home/username" 在 /etc/sudoers? sudo 1 个回答 Voted Best Answer Byte Commander 2017-06-11T04:49:49+08:002017-06-11T04:49:49+08:00 该secure_path值(如果设置)将用作PATH您使用运行的命令的环境变量sudo。 这意味着,当您运行 eg 时,系统将尝试按照指定的顺序在 中指定的目录中sudo apt update查找命令。aptsecure_path 现在,如果您添加一个非 root 用户对 具有写入权限的目录secure_path,您可以在两个位置执行此操作: 附加到secure_path列表的末尾,优先级最低 在列表的开头或中间插入secure_path,具有更高的优先级。 附加到末尾几乎是安全的,因为它不会改变现有命令的解析方式,它只允许执行来自不同目录的可执行文件而无需明确指定它们的位置。这个附加目录对于非 root 用户是可写的这一事实允许他们在没有提升权限的情况下将恶意文件放在那里,因此在键入位于那里的任何命令时必须小心(自愿或通过错误输入其他内容)。 但是,如果您将目录不作为最后一个元素,而是具有更高的优先级,则该目录的内容将遮蔽并覆盖secure_path. 例如,如果你把你的用户目录放在第一位,并且它包含一个(恶意的?)名为 的可执行文件apt,那么下次运行时sudo apt update你会得到一个惊喜...... 我也永远不会直接将主目录添加到任何PATHor secure_path,而是创建一个专用目录,例如/home/USERNAME/bin为此,它只包含我想要的可执行文件PATH,没有别的。 结论: secure_path如果目录对除 root 用户之外的任何人都可写,则不应将它们放入其中。否则,没有提升权限的普通用户(包括恶意软件或破坏此类帐户的攻击者)可以将自己的可执行文件放在那里,并等待任何sudo有权意外(使用常用命令的常见拼写错误作为文件名)或自愿执行它的人。 但是,如果您真的想这样做,请尝试尽可能严格地限制对该目录的写入权限,并确保将该目录添加为的最后一个元素,secure_path以防止其中的任何内容影响系统可执行文件。 备择方案 但是,secure_path如果您想使用sudo. 您还可以使用命令替换which来获取用户中某些内容的完整路径PATH,例如 sudo $(which MY_EXECUTABLE) ARGUMENTS
该
secure_path
值(如果设置)将用作PATH
您使用运行的命令的环境变量sudo
。这意味着,当您运行 eg 时,系统将尝试按照指定的顺序在 中指定的目录中
sudo apt update
查找命令。apt
secure_path
现在,如果您添加一个非 root 用户对 具有写入权限的目录
secure_path
,您可以在两个位置执行此操作:secure_path
列表的末尾,优先级最低secure_path
,具有更高的优先级。附加到末尾几乎是安全的,因为它不会改变现有命令的解析方式,它只允许执行来自不同目录的可执行文件而无需明确指定它们的位置。这个附加目录对于非 root 用户是可写的这一事实允许他们在没有提升权限的情况下将恶意文件放在那里,因此在键入位于那里的任何命令时必须小心(自愿或通过错误输入其他内容)。
但是,如果您将目录不作为最后一个元素,而是具有更高的优先级,则该目录的内容将遮蔽并覆盖
secure_path
. 例如,如果你把你的用户目录放在第一位,并且它包含一个(恶意的?)名为 的可执行文件apt
,那么下次运行时sudo apt update
你会得到一个惊喜......我也永远不会直接将主目录添加到任何
PATH
orsecure_path
,而是创建一个专用目录,例如/home/USERNAME/bin
为此,它只包含我想要的可执行文件PATH
,没有别的。结论:
secure_path
如果目录对除 root 用户之外的任何人都可写,则不应将它们放入其中。否则,没有提升权限的普通用户(包括恶意软件或破坏此类帐户的攻击者)可以将自己的可执行文件放在那里,并等待任何sudo
有权意外(使用常用命令的常见拼写错误作为文件名)或自愿执行它的人。但是,如果您真的想这样做,请尝试尽可能严格地限制对该目录的写入权限,并确保将该目录添加为的最后一个元素,
secure_path
以防止其中的任何内容影响系统可执行文件。备择方案
但是,
secure_path
如果您想使用sudo
.您还可以使用命令替换
which
来获取用户中某些内容的完整路径PATH
,例如