欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

mac系统修复bash漏洞方法教程

程序员文章站 2022-03-28 18:12:27
这篇文章主要介绍了mac系统修复bash漏洞方法教程,本文给出了修复方法和验证方法,需要的朋友可以参考下... 14-12-31...

最近bash漏洞的影响真的有点广泛,居然连mac系统都不能避免,把公司服务器的bash都更新了之后,现在来更新我自己的macbook上的bash.

系统:mac os x 10.9.4

1.要更新bash,就要安装下面的组件

安装command line tools
安装homebrew
在终端里输入:

复制代码
代码如下:

ruby -e "$(curl -fssl https://raw.githubusercontent.com/homebrew/install/master/install)"

会弹出框让安装xcode-select,如图:

mac系统修复bash漏洞方法教程

安装完xcode-select之后,才会安装homebrew.

2.更新bash

mac系统里默认的bash版本是3.2.51,我们要更新到最新的版本

复制代码
代码如下:

brew install bash
sudo mv /bin/bash /bin/bash3.2.51
sudo ln -s /usr/local/bin/bash /bin/bash
bash -version
gnu bash,版本 4.3.27(1)-release (x86_64-apple-darwin13.4.0)

ps:4.3.27是目前最新的版本

然后把备份的bash做下安全设置吧:

复制代码
代码如下:

sudo chmod a-x /bin/bash3.2.51


3.验证



复制代码
代码如下:

env x='() { :;}; echo vulnerable' bash -c "echo this is a test"

如果只输出
this is a test
就表示上面个漏洞已经修复了.

复制代码
代码如下:

env x='() { (a)=>\' sh -c "echo date"; cat echo

如果只输出date,没有输出时间在线,那说明第2次的漏洞也被修复了,网上有个手动给bash打补丁的,就会过不了这个漏洞.

如果上面2个漏洞都没有问题的话,那么可以试试第3个,这第3个有些说有显示,有些又说没有,反正我这里是没有显示的:

复制代码
代码如下:

env ls='() { echo vulnerable; }' bash -c ls

如果没有显示vulnerable,那就说明这个漏洞对你这台机器没有影响.

好了,经过上面的修复,可以暂时放心的去做其他的事了.