Heartbleedよりも危険性高い、bash脆弱性「ShellShock」
サービスを提供するサーバが環境変数を渡すまたは受け取る仕様になっているものは多い。プロセスはfork(2)システムコールで自身をコピーした時に環境変数を引き継ぐ。プロセスはfork(2)を繰り返していくことがあり、そのどこかのタイミングでbash(1)が実行されれば細工された環境変数経由で任意のコマンドが実行されることになる。当初はWebサーバとCGIに焦点があてられていたが、これは問題のほんの小さな側面に過ぎない。ssh(1)でのログインにも影響がでてくるし、環境変数を利用するサービスはほかにいくつもある。
多くのユーザを抱えるMac OS Xの/bin/shの実態はbashであり、Linuxディストリビューションの多くもbashを/bin/shに使っている。このため、/bin/shで動作しているように見えるシェルスクリプトも、実態がbashであればこのShellShockの影響を受ける。Linuxを対象としたシェルスクリプトはbashを前提としているものが多く、今回の影響を受ける可能性が高い。
さらに、環境変数が展開されたり実行されるタイミングを抽象度の高いプログラミング言語やツールを使っている場合にはすべて把握できていない可能性があり、開発者自身が自分の開発しているソフトウェアがこの影響を受けるかどうかわかっていないケースが想定される。ShellShockはHearbleed同様、長期に渡って脅威に利用されるセキュリティ脆弱性となる可能性が高く、今後さまざまな関連発表に注目するとともに、利用しているシステムやソフトウェアを常にモニタリングして問題の影響を受けていないかチェックしていく必要があるといえる。