CERT发行版中列出的三个选项(AcceptEnv术语和SSH_ORIGINAL_COMMAND)都是服务器端选项。如果没有在主机上设置这些参数(并且没有可用的http向量),那么主机是否安全,即使Bash仍然不固定?如果我在openssh服务器上设置了AcceptEnv=HACK,这不应该工作吗?
HACK='() { :;}; /usr/bin/touch /tmp/illegal' ssh user@host发布于 2014-09-26 08:20:42
在ssh方面您应该是安全的,但是也有其他的向量,比如dhclient-脚本。
顺便说一句,如果您的用户有受限的访问权限(例如chroot或sftp),那么您只有通过SSH才真正“易受攻击”。如果您的所有用户都有完整的shell访问权限,那么即使他们可以使用此漏洞运行命令,他们也可以这样做。
发布于 2014-09-26 13:38:55
据我所知你是对的。如果未设置AcceptEnv,则远程客户端无法使SSH服务器处理任何环境变量。
请注意,您可以通过SSH作为经过身份验证的客户端执行命令,并获得该命令以加载您精心编制的环境变量。因此,如果您有任何运行Bash脚本的setuid/setgid二进制文件,这可以用于通过本地或远程通过SSH对您的系统进行身份验证。
https://security.stackexchange.com/questions/68181
复制相似问题