9月のマイクロソフトセキュリティ更新を確認する


 マイクロソフトは14日、定例のセキュリティ更新を予告どおり公開した。

 今月公開されたセキュリティ更新は5件。いずれも最大深刻度は、4段階中で上から2番目に高い“重要”だ。対象となるソフトウェアは、Windowsが2件、Excel関連、Office全般に影響するもの、SharePoint関連がそれぞれ1件となっている。

 米Microsoft Security Response Center(MSRC)のブログでは、今回の5件はいずれも同様の優先順位、同程度のリスクを持っているとしている。ただし、パッチ公開前に脆弱性が一般に公開される、いわゆるゼロデイ脆弱性に関するものとしては3件が存在しており、そのうち1件がExploitability Index(悪用可能性指標)も「1 - 安定した悪用コードの可能性」があるとされているため、最も警戒が必要なのはこれだと思ってもいいだろう。

 なお、米SANS Technology Instituteなどはこれらのうち「MS11-071」「MS11-072」「MS11-073」が一般ユーザーの使うクライアントPCにおいて“Critical(致命的)”であるとランク付けしている。

 では、今月公開された5件のセキュリティ更新情報のうち、SharePointに関する1件を除いた4件について見ていこう。

MS11-070:WINSの脆弱性により、特権が昇格される(2571621)

 WINSとは、Windows Internet Name Serviceの略で、古くから使われてきたWindows PCの名前管理の方法だ。DNSではなく、NetBIOSコンピューター名とIPアドレスとの対応を管理する仕組みになっている。

 この脆弱性は、WINSの実装上の問題を突いて、ローカルでログインしたマシン上で、特権昇格、つまり管理者ユーザーなどの機能を使うことができるというものだ。

 Exploitability Indexは「1 - 安定した悪用コードの可能性」があるとしているが、悪用者はローカルにログインする必要があり、また、クライアントPCのWindows XPやWindows 7は影響を受けないとされているため、一般のユーザーには、この脆弱性にはそれほど大きな影響はないだろう。

 ただ、WIndows Server 2003およびWIndows Server 2008が「影響を受けるソフトウェア」をしてリストアップされているが、これらのサーバの管理者は注意をする必要があるかもしれない(なお、サーバーの中でも、Windows Server 2008 R2 for Itanium-based SystemsおよびWindows Server 2008 R2 for Itanium-based Systems Service Pack 1など、影響を受けないソフトウェアがある。サーバー管理者はマイクロソフトのウェブサイトで対象ソフトなどを確認してほしい)。

MS11-071:Windowsコンポーネントの脆弱性により、リモートでコードが実行される(2570947)

 このセキュリティ更新が修正する脆弱性は、以下の1件のみだ。

・Windowsコンポーネントの安全でないライブラリのロードの脆弱性 - CVE-2011-1991

 Exploitability Indexは、対象OSいずれも「1 - 安定した悪用コードの可能性」となっている。

 この脆弱性では、ユーザーがネットワークディレクトリ上のリッチテキスト形式ファイル(.rtf)やテキストファイル(.txt)、Wordファイル(.doc)を開いた際、悪用可能なDLLが存在すると、DLL内に隠された悪意のコードを実行される可能性があるというものだ。

 実のところこの脆弱性は、後述する「MS11-071」でも修正されている安全でないライブラリのロードの脆弱性と同様、DLLの読み込み方の問題だ。この脆弱性の場合、フルパスでなく、読み込みファイルが指定され、かつそれがネットワークドライブ上であったときに、必要なDLLをネットワークドライブからも探してしまうため、そこに悪意のプログラムが含まれた不正なDLLがあれば、それをPCが読み込んでしまうという。

 DLLは、プログラム内に静的に含むのではなく、さまざまなプログラムで共用できるようにマイクロソフトが作った、OLEやCOM、ActiveXなどにも続く仕組みの1つだ。

 だが、仕様の問題で、仕組みの発明から20年以上たった今でも、このような脆弱性の温床となったり、いわゆる「DLL地獄(同じ名前で内容・バージョンの違うDLLが混在する問題)」の問題が発生したりというように、プログラマーにとってはやっかいなものとなってしまっているように筆者は思う。

 このような仕組みの改善が、次期Windows以降で修正されるのか、注目したいところだ。

MS11-072:Microsoft Excelの脆弱性により、リモートでコードが実行される(2587505)


 Microsoft Excelに関して以下の脆弱性が修正されている。これらはいずれも一般には未公開でマイクロソフトに報告された脆弱性だ。

・Excelの解放後使用のWriteAVの脆弱性 - CVE-2011-1986
・Excelの境界外の配列のインデックスの脆弱性 - CVE-2011-1987
・Excelのヒープ破損の脆弱性 - CVE-2011-1988
・Excelの条件式解析の脆弱性 - CVE-2011-1989
・Excelの境界外の配列のインデックスの脆弱性 - CVE-2011-1990

 なお、ソフトのバージョンによって脆弱性が影響するかどうかは異なり、例えば、

・Excelの解放後使用のWriteAVの脆弱性 - CVE-2011-1986
・Excelのヒープ破損の脆弱性 - CVE-2011-1988
・Excelの境界外の配列のインデックスの脆弱性 - CVE-2011-1990

の3つは最新のMicrosoft Office 2007(Service Pack 1/2含む)では「影響なし」としている(ちなみにExploitability Indexでいうと、旧バージョンのソフトでは「1 - 安定した悪用コードの可能性」「2 - 不安定な悪用コードの可能性」があり、ヒープスプレー攻撃などで不完全ながら動作するExploitを作成できる可能性がある)。

 ただし、これらはいずれも一般には未公開でマイクロソフトに通知されたもので、技術的情報の公開も少なく、実際には悪用コードを作るのはそう易しいことではないだろう。

MS11-073:Microsoft Officeの脆弱性により、リモートでコードが実行される(2587634)


 このセキュリティ更新は2件の脆弱性を修正する。

・Officeコンポーネントの安全でないライブラリのロードの脆弱性 - CVE-2011-1980
・Office未初期化オブジェクトポインターの脆弱性 - CVE-2011-1982

 「Officeコンポーネントの安全でないライブラリのロードの脆弱性」の内容は、2010年8月にセキュリティアドバイザリ「セキュリティで保護されていないライブラリのロードの脆弱性」で公開された既知の脆弱性に関連するもので、「WindowsのDLLハイジャッキング」とも呼ばれる問題への修正が施されている。

 Microsoft Officeの共有コンポーネントにもこうした問題の影響を受けるコードが存在し、Officeに含まれるさまざまなソフトが攻撃を受ける可能性があるという。
 
 脆弱性の原因は、アプリケーションがDLLを読み込む際、Windowsがカレントディレクトリ、システムディレクトリ、Windowsディレクトリ……という順でDLLを探して読み込むことに起因するシステム設計上の問題によるものだ。アプリケーションがDLLの正当性を確認していないなどの条件が重なった場合、カレントディレクトリなどに仕掛けられた悪意のコードを含むDLLを実行してしまう「DLLプリロード攻撃」が成立する。

 これに対して、開発者向けにこの脆弱性の回避策となる実装方法を開示し、アプリケーション開発者に改修を促していた。

 これまでにも、Office(MS10-087)、Windowsムービーメーカー(MS10-093)、Windows Mediaエンコーダー(MS10-094)、DirectShow(MS11-015)などで外部ライブラリ(DLLファイル)の安全なロード方法に関する修正が施されていて、この修正もこれらの一環ということになる。

 もう1つの「Office未初期化オブジェクトポインターの脆弱性」は、MSO.dllの実装において、初期化されていないオブジェクトポインターを利用してしまう個所があり、Wordファイルを処理する方法に、リモートでコードが実行される問題が存在するという、既知の脆弱性だ。

 ちなみに、報告された攻撃方法ではMicrosoft Wordだけが悪用されるとしているが、その後マイクロソフトの調査によって、Microsoft Officeの共有コンポーネントに影響を受けるコードが存在することが確認され、指摘の分だけでなくいくつかのコードが修正されているとのことだ。

 なお、Exploitability Indexも「1 - 安定した悪用コードの可能性」が、最新のOffice 2010とそれ以前のサポートされるバージョンにも当てはまるということだ。注意が必要な脆弱性だろう。


関連情報


(大和 哲)

2011/9/15 12:25