犬ターネット

bash をソースコンパイル&パッチあてて Shellshock 対策した

2014-09-29 セキュリティ

Shellshock 対策しようと yum update bash したけどエラー出て動かなかったからソースコンパイルした。ちなみに bash-4.3.tar.gz だけコンパイルしても意味なくてパッチも当てないとだめ

$ wget http://ftp.gnu.org/gnu/bash/bash-4.3.tar.gz
$ tar -xzvf bash-4.3.tar.gz
$ cd bash-4.3
$ wget http://ftp.gnu.org/gnu/bash/bash-4.3-patches/bash43-{001..030} 
$ cat bash43-{001..030} | patch -p0 
$ ./configure
$ make
$ make install

※公開されているパッチの数を指定すること

/usr/local/bin/bash にインストールされるから /bin/bash にシンボリックリンク張る。

$ mv /bin/bash /bin/bash.org
$ ln -s /usr/local/bin/bash /bin/bash

確認コマンド実行。「vulnerable」が表示されなかったらOK。

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

■CVE-2014-6278
x='() { echo vulnerable; }' bash -c x

■CVE-2014-7169
env x='() { (a)=>\' bash -c "echo echo vulnerable"; cat echo

■CVE-2014-7186
bash -c 'true <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF' || echo "vulnerable"

■CVE-2014-7187
(for x in {1..200} ; do echo "for x$x in ; do :"; done; for x in {1..200} ; do echo done ; done) | bash || echo "vulnerable"

この前の初スタジオの様子

バンド初合わせ