Windows および Samba に影響を与える「Badlock」と名付けられた脆弱性について、2016年3月28日に限定的に情報が公開されて以来、多くの憶測が飛び交いました。Badlock に関する Webサイト「badlock[.]org」は、WHOIS によると、3月11日にすでに公開されていました。ただ、脆弱性は名前がついたからといって広く拡散する深刻な脆弱性であるとは限りません。
Microsoft と Samba から修正プログラムと詳細情報が公開されたのを受け、本記事では FAQ形式で過剰に警告された Badlock の事実を説明します。また、Badlock と比較するため他の脆弱性の例を挙げています。
Badlock には、以下の脆弱性識別子が割り当てられています。
- CVE-2016-0128 (Microsoft)
- CVE-2016-2118 (Samba)
■ Badlock を利用した攻撃による影響は広範囲に及びますか?
はい。Windows 2003、Windows 2000、Windows XP を含む すべての Windows OS搭載の PC とサーバ、および Samba を搭載するサーバが影響を受けます。しかし、後述しますが、この脆弱性は簡便に攻撃に利用できるようなものではありません。
■ この脆弱性を利用した攻撃は確認されていますか?
Microsoft のセキュリティ アドバイザリおよび Badlock の Webサイトは、この脆弱性を利用した攻撃を確認したという報告はないと明言しています。この脆弱性は非公開で Microsoft に報告されたものです。しかし、Badlock.org は「脆弱性を利用した攻撃はすぐに実行されると確信している」と警告しています。
■ この脆弱性はどれほど深刻ですか? 容易に攻撃に利用されますか?
Badlock にまつわる憶測の中の1つは、この脆弱性が Microsoft の脆弱性「MS08-067」に近い、とするものです。「MS08-067」は、ワーム「DOWNAD(別名:CONFICKER)」に利用された脆弱性です。「MS08-067」のゆえに、DOWNAD はたった1台の PC からネットワーク全体に拡散し、何百万という Windows機器が感染しました。
Badlock は、およそ「MS08-067」に近い脆弱性ではありません。Microsoft の深刻度評価では、「MS08-067」がすべてのバージョンの Windows で「緊急」であるのに対し、Badlock は二番目の「重要」です。また、Badlock の共通脆弱性評価システム(CVSS)での評価値は「7.1」ですが、「MS08-067」の CVE-2008-4250は、「10.0」と脆弱性としての最高値でした。加えて、Microsoft の「悪用可能性指標(Exploitability Index)」によれば、Badlock については3段階中“3”、一方 CVE-2008-4250 は“1”です。悪用可能性指標の3という数値は、この脆弱性が攻撃に利用される可能性の低い「機能する見込みのない悪用コード」であることを表しています。
リモートでコードが実行される脆弱性「MS08-067」が攻撃に利用された場合、感染したシステムを遠隔で制御できます。攻撃者はこの脆弱性を利用し、認証なしで「リモートプロシージャコール(Remote Procedure Call、RPC)」での任意のコードの実行が可能になります。
しかし、Badlock を攻撃に利用する方法はもっと複雑です。鍵となるのは攻撃者が「Man-In-The-Middle(MitM、中間者)攻撃」を最初に仕掛ける必要があることです。つまり、攻撃者はある程度攻撃対象のネットワークに対する知識を持っていなければ、攻撃を仕掛けられないことになります。インターネット上にある脆弱性を利用する攻撃ツールをダウンロードして、攻撃を仕掛けられるというような安易なものではありません。
■ 「MS08-067」ほど深刻でないことは分かりましたが、Badlock の脆弱性は正確には何ですか?
この脆弱性をさらに調べてみます。CVE-2016-0128 および CVE-2016-2118 は、特権昇格の脆弱性です。マイクロソフト セキュリティ情報によれば、この脆弱性は「SAM および LSAD リモート プロトコルが RPCチャネルを確立する方法が原因で」起こります。脆弱性は、SAMR が認証レベルを処理する方法にあります。
Samba のアドバイザリーは、「中間者攻撃によりクライアントとサーバ間の DCERPC トラフィックを傍受し、クライアントになりすまし、認証されたユーザアカウントと同じ権限を得ることが可能になる。これは ActiveDirectory のドメインコントローラにとって最も問題となる。」と説明しています。最悪の場合、攻撃者はこの特権昇格によって、SAMデータベースにアクセスすることが可能になり、総当り攻撃によってハッシュからパスワードを取得することができます。
結論としては、攻撃者がBadlockを利用した攻撃を行うためには、中間者攻撃を実行するためにまずネットワークトラフィックの傍受が可能でなければなりません。その後最終的に SAMデータベースへのアクセス、データの読み書きが可能になり、パスワードのハッシュにアクセスできるようになります。そうして得た認証情報を使って攻撃者はもう一人のユーザになりすますことが可能になります。
このようにBadlockを利用した攻撃は多発する可能性は少ないものの、標的型攻撃などで利用される可能性は残っています。弊社は、ユーザができるだけ速やかに更新プログラムを適用するか、あるいは Badlock に対応したセキュリティ対策を導入することを強くお勧めします。
■ Windows と Samba をこの脆弱性からどのように保護することができますか。
Microsoft と Samba はこの脆弱性に対する更新プログラムを公開済みです。Microsoft セキュリティアドバイザリはこちら、Samba のセキュリティアドバイザリはこちらを参照してください。
■ トレンドマイクロの対策
トレンドマイクロのサーバ向け総合セキュリティ製品「Trend Micro Deep Securityと「クライアント向け脆弱性対策製品「Trend Micro Virtual Patch for Endpoint(旧 Trend Micro 脆弱性対策オプション)」は、なんらかの事情で速やかにバージョンアップができない場合でも Windowsユーザを保護することができます。Samba のバージョン4.1未満をご利用のユーザも、「Trend Micro Deep Security」によって保護できます。推奨検索機能により適用するセキュリティルールが自動更新され、簡単に自動で運営されます。
また、「Trend Micro Deep Security™」「Trend Micro Virtual Patch for Endpoint(旧 Trend Micro 脆弱性対策オプション)」「Trend Micro TippingPoint」をご利用のユーザは、以下の更新プログラムによってこの脆弱性から保護されています。
DeepSecurity 更新プログラム DSRU16-009 が2016年4月12日にリリースされています。
- 1007584 – SAMBA RPC Authentication Level Downgrade Vulnerability
- 1007586 – SAMBA RPC Authentication Level Downgrade Vulnerability – 1
- 1007593 – Identified SAMBA DCERPC AUTH LEVEL CONNECT Password Validate Request
- 1007531 – Microsoft Windows RPC Downgrade Vulnerability (CVE-2016-0128)
- 1007539 – Microsoft Windows RPC Downgrade Vulnerability (CVE-2016-0128) – 1
- 1007561 – Identified Windows DCERPC AUTH LEVEL CONNECT Password Validate Request
ネットワークセキュリティ対策製品「TippingPoint」では以下のフィルターにより今回の脆弱性を利用した攻撃をブロックします。
- 24259: RPC: Windows SAMR Man-in-the-Middle Vulnerability (Badlock)
- 24260: RPC: SamrValidatePassword Method Using Unencrypted Authentication Level
参考記事:
- 「How Bad is Badlock (CVE-2016-0128/CVE-2016-2118)?」
by Pawan Kinger (Director, Deep Security Labs)
翻訳:室賀 美和(Core Technology Marketing, TrendLabs)