AppleのOS Xデスクトップオペレーティングシステムを含む多くのUnixバージョンで見つかったBashコマンドシェルの新たな脆弱性により、Macコンピュータがいわゆる「Shell Shock」攻撃に対して脆弱になることを、RedHatのセキュリティ研究者が木曜日に発見した。
このエクスプロイトにより、攻撃者はリモートで悪意のあるスクリプトを実行できますが、リモート接続またはサーバー側スクリプトを実行している Web サーバーからの SSH アクセスを手動で許可していない限り、ほとんどのユーザーは危険にさらされません。
ここでは、脆弱性があるかどうかを確認する方法と、システムに対する「Shell Shock」攻撃を回避するために実行できる操作について説明します。
「知らない誰かがリモートからあなたのマシンにアクセスし、Bashコマンドを実行できる場合にのみ、本当に脆弱になります」と研究者らは説明している。
Stack Exchange のスレッドでは、Mac が Shell Shock 攻撃を受けやすいかどうかを判断するには、ターミナル (Mac のアプリケーション フォルダ内) で次のコマンドを実行する必要があると説明されています。
env x='() { :;}; echo vulnerable' bash -c 'echo hello'
上記のコマンドを実行した後、ターミナル ウィンドウに「vulnerable」という単語が表示される場合、システムは悪用される可能性があります。
次のように書いてある場合:
bash: 警告: x: 関数定義の試行を無視します
bash: `x' の関数定義のインポート中にエラーが発生しました
hello
それで大丈夫です。
Apple の Xcode とコマンドライン コンパイラがインストールされている冒険心のある人は、新しいパッチ適用済みの Bash バージョンをコンパイルすることで、自分でこの問題を解決できます。
このプロセスは気の弱い人には向いていませんので、ご注意ください。試してみたい方は、リンク先のStack Exchangeスレッドに記載されている詳細な手順に従ってください。
セキュリティ研究者のロバート・グラハム氏は自身のブログで、Bash の脆弱性は「今年初めにウェブサーバーで広く使用されている OpenSSL ソフトウェアで発見された Heartbleed バグと同じくらい大きなもの」だと書いている。
Bashの脆弱性は長年存在していたため、ネットワーク上にはこのバグの影響を受ける古いデバイスが多数存在します。「パッチ適用が必要なのに、適用されないシステムの数は、Heartbleedよりもはるかに多い」とグラハム氏は記しています。
念のため、システム環境設定でリモート ログインを無効にしてください。
繰り返しになりますが、この脆弱性は、システム環境設定で SSH 共有を有効にしたことがない大多数のデスクトップ ユーザーではなく、世界に公開されている Mac OS X、Unix、Linux サーバーのシステム管理者に主に関係するはずです。
Appleが先週リリースした最新のOS X Mavericks 10.9.5には、Bashの脆弱性に対する修正は含まれていません。Linuxのいくつかの亜種ではすでにパッチが公開されているため、Appleは近いうちにOS X向けの修正プログラムを公開し、この脆弱性に対処する可能性が高いでしょう。
いずれにせよ、引き続きお知らせします。
[RedHatブログ]