今天早上我上班时读了一篇https://access.redhat.com/articles/1200223的文章。我已经在我负责的大多数系统上更新了Bash,但是,我被要求在几个FreeBSD服务器上升级Bash。
如何检查在FreeBSD上运行的Bash版本,以及如何修补它以消除此漏洞?
发布于 2014-09-25 17:44:48
可以使用以下方法验证已安装的bash版本
pkg info bashbash的补丁版本是已经在端口树中了,因此您可以像任何应用程序一样升级它。
一旦bash由包构建场重新生成,您就可以升级bash,就像升级任何包一样
pkg upgrade bash如果你不熟悉pkg,你应该阅读手册中适当的一章。
重要注意事项。在编写本报告时,似乎还没有可用的包,下面是从源代码构建您自己的包的手动过程:
1.在尝试升级之前,一定要确保升级端口树。
2.将您的shell移动到端口目录并生成
cd /usr/ports/shell/bash
make BATCH=yes build3.将旧的batch替换为
make BATCH=yes deinstall
make BATCH=yes reinstall发布于 2014-09-25 17:27:37
在回答中,检查这一点的命令是:
env x='() { :;}; echo vulnerable' bash -c 'echo hello'如果你得到vulnerable,它仍然是脆弱的。
这应该可以在任何系统上使用Bash来测试该漏洞AFAIK。我在SUSE和红帽Linux上测试过,但它们不是BSD。要检查版本,它应该类似于其他系统:
$ echo $BASH_VERSION
4.3.11(1)-release
$ bash --version
GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.有关下载/安装修补程序的更多信息,请参见FreeBSD论坛。从这一环节:
4.3.25之前的所有内容都是易受攻击的,4.3.25应该包含修补程序。
https://stackoverflow.com/questions/26041877
复制相似问题