Linux などで使用されるオープンソースプログラム「Bourne Again shell(bash)」に存在する脆弱性「Shellshock」が最初に発見されてから、さまざまな問題が bash に確認されています。これは意外なことではありません。OpenSSL に存在する脆弱性「Heartbleed」も発覚後、OpenSSL に存在するさまざまな脆弱性が確認されました。今回の bash と「Shellshock」においても、同様のことが繰り返されています。
■脆弱性「Shellshock」の概要
2014年10月2日現在、脆弱性「Shellshock」に関する脆弱性識別子 CVE は6つ公開されています。この脆弱性を利用した遠隔からの攻撃は、bashシェルのよく知られた機能に関係しています。それは、入力値や関数を環境変数に割り当てることを可能にする機能です。これらの不具合は、シンタックス「() {」で始まる関数定義に関係しています。例えば:
env -i x='() { :;}; echo vulnerable' bash -c "echo this is a test"
上記のコマンドを脆弱性が存在する bash のバージョンで実行すると、以下の結果になります。
vulnerable
this is a test
一般に入手可能な「Proof-of-concept(PoC、概念実証型エクスプロイト。実際に有効な攻撃ができることを実証している攻撃コード)」は複数あり、オープンソースなコンピュータセキュリティに関するプロジェクト「Metaspolit」のモジュールは、すでに脆弱性「Shellshock」を利用した攻撃に実際に使われています。
■「Trend Micro Deep Security(トレンドマイクロ ディープセキュリティ)」による保護
最初に確認された「Shellshock」は、Stephane Chazelas 氏によって発見され、9月24日に CVEデータベースに「CVE-2014-6271」として登録されました。最初の修正プログラムの公開後、Google の Tavis Ormandy 氏が 2番目の脆弱性を報告し、「CVE-2014-7169」として同日に登録されました。
これら 2つの脆弱性を利用した攻撃により、ユーザ権限なしで遠隔からのコマンド実行が可能になります。その後の調査により、確認された bash に存在する脆弱性は以下の 4つです。
- CVE-2014-6277
- CVE-2014-6278
- CVE-2014-7186
- CVE-2014-7187
アプリケーションがどのように bashシェルを呼び出すかによって、さまざまなプロトコル上に侵入経路を開くことができます。例えば、現在一般に報告されている攻撃の侵入経路は、HTTP、SSH、DHCP、FTP、SIP、SMTP、VPN となっています。「Shellshock」を利用した攻撃に関する研究が進み、またこの脆弱性を利用した攻撃をサイバー犯罪者が画策し続けているため、時が経つにつれ、脆弱なプロトコルをさらに確認することになるかもしれません。
下記は、トレンドマイクロのサーバ向け総合セキュリティ製品「Trend Micro Deep Security(トレンドマイクロ ディープセキュリティ)」によってユーザが保護された日の時系列図(図1)と、「Shellshock」として分類される脆弱性およびディープセキュリティのルール一覧(表1)です。
「Shellshock」に関連する攻撃に加え、一般的なコマンドインジェクションの手法を利用し、Webアプリケーションを狙う攻撃が増加することを弊社は予測しています。ディープセキュリティのフィルタ(1005934 – Identified Suspicious Command Injection Attack)は、こうした脅威から Webアプリケーションを保護します。また、「CVE-2014-7186」や「CVE-2014-7187」を利用する攻撃を軽減します。
ディープセキュリティにより、「Shellshock」を利用した攻撃の侵入経路となるプロトコルは保護されています。保護されている主なプロトコルは以下のとおりです。
- DHCP
- HTTP
- SIP
- SMTP
また、ディープセキュリティをご利用のユーザは、以下のフィルタを適用することにより、「Shellshock」への攻撃から保護することが可能です。
- 1006256 – GNU Bash Remote Code Execution Vulnerability
- 1006258 – GNU Bash Remote Code Execution Vulnerability Over DHCP
- 1006259 – GNU Bash Remote Code Execution Vulnerability Over SMTP
- 1006260 – GNU Bash Remote Code Execution Vulnerability Over SIP
また、上記以外の侵入経路を保護する汎用のフィルタは以下のとおりです。
- 1006261 – Identified Suspicious Bash ShellShock Attack
関連記事:
- 「Shellshock」脆弱性を利用する様々な攻撃を解析:ワーム活動、標的型攻撃、C&Cサーバ
/archives/10039 - 日本への「Shellshock」脆弱性攻撃、組み込み機器にも着弾
/archives/10025 - bashに存在する脆弱性「Shellshock」を利用したボットネットによる攻撃を確認
/archives/9983 - 「Shellshock」:どのように被害をもたらすか
/archives/9974 - bashに存在する脆弱性「Shellshock」を利用した攻撃を確認、不正プログラム「BASHLITE」へ誘導
/archives/9959 - bashに存在する脆弱性 「Shellshock」:「CVE-2014-7169」および「CVE-2014-6271」
/archives/9957
参考記事:
by Virendra Bisht and William Gamazo Sanchez (Deep Security Labs)
翻訳:品川 暁子(Core Technology Marketing, TrendLabs)