OSX BASH 漏洞修复指南

2014-09-25 22:47:53 +08:00
 timwu
以下from stackexchange,实测有效,链接: http://apple.stackexchange.com/questions/146849/how-do-i-recompile-bash-to-avoid-the-remote-exploit-cve-2014-6271-and-cve-2014-7

以下为搬砖:

1.用homebrew bash的童鞋

brew update
brew upgrade bash

2.用苹果自带bash的童鞋

mkdir bash-fix
cd bash-fix
curl https://opensource.apple.com/tarballs/bash/bash-92.tar.gz | tar zxf -
cd bash-92/bash-3.2
curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-052 | patch -p0
cd ..
xcodebuild
sudo cp /bin/bash /bin/bash.old
sudo cp /bin/sh /bin/sh.old
build/Release/bash --version # GNU bash, version 3.2.52(1)-release
build/Release/sh --version # GNU bash, version 3.2.52(1)-release
sudo cp build/Release/bash /bin
sudo cp build/Release/sh /bin

验证是否成功
输入
bash -version
输出
GNU bash, version 3.2.52(1)-release (x86_64-apple-darwin13)
则说明升级成功

输入
env x='() { :;}; echo vulnerable' bash -c 'echo hello'
只输出
hello
则说明升级成功

若输出了
vulnerable
hello

就赶紧滚去修复吧~
4992 次点击
所在节点    分享发现
8 条回复
hjc4869
2014-09-25 23:12:22 +08:00
不是说现有修复方法可以轻松绕过吗。。→_→
timwu
2014-09-25 23:16:55 +08:00
@hjc4869 恩。。env X='() { (a)=>\' sh -c "echo date"; cat echo 输出日期也挂 坐等新的release版修复
zdf
2014-09-25 23:48:56 +08:00
这样的漏洞苹果应该要出个补丁吧?
Showfom
2014-09-25 23:51:05 +08:00
curl https://opensource.apple.com/tarballs/bash/bash-92.tar.gz | tar zxf -

这一步的时候提示

curl: (60) SSL certificate problem: Invalid certificate chain
More details here: http://curl.haxx.se/docs/sslcerts.html
Tink
2014-09-26 02:18:41 +08:00
@Showfom 把no check cer加上
inferjay
2014-09-26 11:48:42 +08:00
已补
diguage
2014-09-28 11:10:18 +08:00
使用HomeBrew,这个最新版的Bash的修复可以被绕过去?
diguage
2014-09-28 11:11:03 +08:00
再问:为啥苹果官网没有出修改方式呢?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/135725

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX