我升级了旧的Debian 6.0(挤压)服务器,但漏洞似乎仍然存在:
$ env x='() { :;}; echo vulnerable' bash -c 'echo hello'
vulnerable
hello
如何在 Debian 6.0 (Squeeze) 上将 Bash 升级到更新版本?
答案1
要获取旧版本的更新,您可能需要将 Debian 6.0 (Squeeze) LTS 存储库添加到您的sources.list
.
要添加此存储库,请编辑/etc/apt/sources.list
以下行并将其添加到文件末尾。
deb http://ftp.us.debian.org/debian squeeze-lts main non-free contrib
然后运行:
apt-get update
随着更新的运行,您现在应该会在存储库列表中看到一些新的源。现在只需:
apt-get install --only-upgrade bash
sources.list
以下是我刚刚升级的 Squeeze 服务器上的文件列表:
deb http://ftp.us.debian.org/debian/ squeeze main
deb-src http://ftp.us.debian.org/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main
# squeeze-updates, previously known as 'volatile'
deb http://ftp.us.debian.org/debian/ squeeze-updates main
deb-src http://ftp.us.debian.org/debian/ squeeze-updates main
# Other - Adding the lsb source for security updates
deb http://http.debian.net/debian/ squeeze-lts main contrib non-free
deb-src http://http.debian.net/debian/ squeeze-lts main contrib non-free
答案2
您必须使用该squeeze-lts
存储库才能继续接收 Debian Squeeze 的更新
要添加此存储库,请编辑/etc/apt/sources.list
并添加行
deb http://ftp.us.debian.org/debian squeeze-lts main non-free contrib
(如果需要,non-free
您可以删除)contrib
要仅更新 bash,apt-get update
请在运行后apt-get install bash
仅安装 bash,而不是完整升级。