bashの脆弱性

既に色々な方がblogに掲載していますが、
今回発見されたbashのバグについて感想を書きます。

脆弱性の確認

下記のコマンドを実行した際に[vulnerable]が表示される場合は本脆弱性の対象です。

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

既に対策済みであれば下記の様にエラー出力や、[this is a test]のみの出力になるかと思います。

# env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
this is a test

対応方法

殆どの各ディストリビューションのupdateにて既に対策済みパッケージが配布されています。

例えばCentOSであれば下記の方法にて対応可能です。

影響は少ないと言っていたAppleでも既に対応パッケージがダウンロード出来る

また、色々な大人の事情でupdateを適用出来ない場合などは下記を実施しておいた方が良いでしょう。

ダウンロード: bash_ld_preload.c

$ wget https://access.redhat.com/sites/default/files/attachments/bash_ld_preload.c

チェックサムの確認

$ sha256sum bash_ld_preload.c
28cb0ab767a95dc2f50a515106f6a9be0f4167f9e5dbc47db9b7788798eef153 bash_ld_preload.c

コンパイル

$ gcc bash_ld_preload.c -fPIC -shared -Wl,-soname,bash_ld_preload.so.1 -o bash_ld_preload.so

コンパイル済みライブラリの配置

# cp bash_ld_preload.so /lib/

ld.so.preloadファイルの作成

# vi /etc/ld.so.preload
/lib/bash_ld_preload.so

ライブラリの再読み込み

# ldconfig

Apacheの再起動

# service httpd restart

可能であればOS再起動するのが望ましいと思います。

MSPとしての対応

OpenSSLで発見されたHeartbleedの問題もそうでしたが、意識の薄い人は対応しない。
bashのshellshockについても同様で、脆弱性を残したまま放置されるサーバが多いのだろうなと思います。

サービス事業者であれば最低限、注意発起文を掲載するなどの対応が必要だと思います。

  • 「何も情報を掲載しない」= ここのサービスは該当しない。

と認識している顧客も多いと思う。

MSP事業主自体あまり今回の問題の重大性を理解していない。
インフラしか見ていない様なところで「sshログイン出来ないなら影響ないね!」なんて言ってる人も居て呆れる。

リモートでコマンド実行出来ちゃうから厄介で、 更に潜在的なバグなどがあれば簡単にrootを奪取することも可能なのに。




Comments

comments powered by Disqus