使用 /bin/sh 有哪些安全风险?

使用 /bin/sh 有哪些安全风险?

我的一个朋友告诉我,你永远不应该允许你的用户通过 ssh 进行攻击,/bin/sh因为它存在许多安全问题,人们可以利用它进行攻击。这是真的吗?如果是,它有哪些安全风险?如果我的用户没有 sudo,他们可以使用 /bin/sh 进行哪些攻击?

答案1

安全问题一旦被报告,就会得到修复。对于其他任何 UNIX 或 Linux 程序/bin/sh来说都是如此。/bin/[b]ash

在 Debian 中,默认情况下,/bin/sh符号链接到/bin/dash,您可以使用 来更改这一点galternatives

如果不知道朋友的意思,就不可能准确回答。下次见到他时,请向朋友要一个 CVE 编号,如果他不能给你,那他就是编造的。

查看/bin/sh链接到什么的最简单方法是:ls -l /bin/sh,同样,链接到什么并不重要,我不知道 shell 中当前是否存在安全问题,而且没有 CVE,就没有安全问题。

其实还有这个:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-16522

然而,这并不是 中的漏洞/bin/sh,无论它与什么相关,它是 MitraStar 公司的路由器存在的问题,它会执行特定的命令,root不幸的是,它允许经过身份验证的用户(在路由器上拥有用户名/密码的用户)输入诸如 的命令/bin/sh,该命令的执行方式root允许任何拥有路由器的有效用户名/密码的人完全控制路由器。

编辑-来自评论:

下面是一个 shell 脚本,/tmp它只输出$0,我在我的主目录中创建了一个名为的符号链接,hhh指向/tmp/test.sh

$ echo '#!/bin/sh

echo $0' > /tmp/test.sh
$ chmod +x /tmp/test.sh
$ ln -s /tmp/test.sh hhh
$ ls -l hhh
lrwxrwxrwx 1 jdoe Users 12 Dec 18 07:21 hhh -> /tmp/test.sh
$ ./hhh
./hhh
$ $(pwd)/hhh
/home/jdoe/hhh

答案2

你的朋友错了。在很多(大多数)系统上,/bin/sh 实际上是另一个 shell 的链接,例如在 CentOS 上是 /bin/bash,在 Ubuntu 上是 /bin/dash。你应该让你的朋友详细说明他们认为通过 /bin/sh 暴露的安全问题。

相关内容