金曜日, 2月 18, 2011

【zeroday警告】WindowsサーバSMB「Mrxsmb.sys」のBoFとDoSバグに付いて


今週のJST火曜日、「Full Disclosure」セキュリティメーリングリストに新しいMicrosoft Windows OSのゼロデイバグが発見されてアナウンスをされております。リンクはこちらとなります。

本件のゼロデイ(zero day)が現在盛り上がってしまいまして、詳細な情報が少なくここで詳しく書こうと思っています。

バグの情報では下記の情報となります↓
MS Windowsサーバ2003、AD(Active Domainサービス)のPRE-AUTH(認証前仕組み)BROWSER ELECTION(Windows Server 2003 ベースのメンバ サーバーではなく、ワークステーションがマスター ブラウザになることがある)リモートHEAP OBVERFLOW問題が発見された。

本問題のベクター情報↓
#Title: MS Windows Server 2003 AD Pre-Auth BROWSER ELECTION Remote Heap Overflow
#Bug: Heap Overflow
#Remote Exploitability: Unlikely
#Local Exploitability: Likely
#Context: Broadcast, Pre-Auth
#Reference: 前回のSMBバグ「SMB++,0day--「FullDisclosure」

どの辺にバグがありますか?↓
#Mrxsmb.sys, around BowserWriteErrorLog+0x175, while trying to copy 1go from
ESI to EDI ...
#Code will look something like this:
#if ((Len + 1) * sizeof(WCHAR)) > TotalBufferSize) { Len =
TotalSize/sizeof(WCHAR) - 1; }
#-1 causes Len to go 0xFFFFFFFF

説明は、Mrxsmb.sysドライバーの「BowserWriteErrorLog+0x175」の所ににバグがあります。このドライバーはサーバ・メッセージ・ブロック(Server Message Block /SMB)プロトコルでクライアントからのSMBリクエアストが来ると管理するドライバーです、この目的でMrxsmb.sysがWindowsネットワークの中に必要ですね。
このバグに当たって悪戯プロセスのリクエアストが来るとHEAP OVERFLOWの状況を作れるので、サーバの権限が取られる可能性が出ます、攻撃が失敗した場合サーバはDoS状態になる可能性も高いです。

再現仕方がありますか?
これは問題ですね、再現方法は明確にFull Disclosureに書いてありますので、技術者なら誰も再現が出来きるかと思います。
詳しくは、Browser Electionという機能があります。Browser Electionの悪戯リクエアスト(例えばものすごい長いサーバ名/ホスト名を書くと)が来るとのバグっている「mrxsmb.sys」がパンクしてしまいます。Microsoftセキュリティブログにも再現方法宇が書いてありますので↓
A malformed BROWSER message would cause the Master Browser to hit the vulnerable code below and trigger the vulnerability.

The vulnerability is due to an integer underflow where a 32-bit length value becomes -1. This is then used in a memcpy call as follows:

if ( Length > 0 ) {
RtlCopyMemory(StringOffset, InsertionString, Length*sizeof(WCHAR));

The copy length will therefore be -2 (0xFFFFFFFE) on 32-bit systems, and 0x1FFFFFFFE on 64-bit systems. This leads to a kernel pool buffer overrun in the context of a thread running at DISPATCH.


※詳しいBrowser Electionの情報ではMicrosoftサイトへご覧下さい。
追加情報ですがWindows Server 2003 SP2とWindows XP SP3には本件の問題を再現が出来ました。


マルウェアがこのバグ情報を使えますか?
はい、使えます。直接攻撃可能性は内部ネットワーク側から十分出来ます。リモートからの攻撃可能性が低いですが、リモートからexploitツールを使えば本件のバグっているサーバが分かります。
せめて、マルウェア感染可能性の話ですが、もしネットワーク側にあるPC/サーバが、本件のexploitコードが持っているマルウェアに感染されましたら、マルウェア仕組みを作れます。

現時点本件のバグがどんなレベルですか?
1)VUPENでは「Critical」、リンクはこちら
2)SECUNIAですと「Moderately Critical」、リンクはこちらです。
※上記の2社は結構有名なセキュリティ会社です。

メーカーからのレスポンスはどんな感じ?
「Microsoftセキュリティ&ディフェンス」のブログには本件のセキュリティ問題について認められました、リンクはこちらです

パッチ待ちしかないので。ワークアラウンドがあるけど少ないですが、下記の方法が可能です↓
1) BROWSER ELECTION機能を無効にする
2) BROWSER ELECTIONのポート番号のデータやり取りはスイッチで止める


本件の問題は結構ニュースでも流行りはじめたみたいのでリファレンスURLがありますか?↓

---
アドリアン・ヘンドリック
株式会社ケイエルジェイテック
マルウェア研究センター ゼロデイ.JP

0 件のコメント:

コメントを投稿