マカフィー株式会社 公式ブログ

McAfee Labs] 2010年9月27日 更新

OSおよびアプリケーションによる、安全ではないライブラリのロード

 

任意のWindowsアプリケーションでのDLLのプリロードの危険性について、マイクロソフト社が認めたという発表がありましたが、これは何年も前に複数のWindows以外のOSを搭載したシステムで悪用されたLD_PRELOADの脆弱性のことを想起させます。新種の脆弱性ではありませんが、最近のLNKファイルのゼロデイの脆弱性は、システムに組み込まれた正当な手法を使って信頼できないコンポーネントをロードできるという、おそらくそれまでで最も大きな欠陥でした。

LNKの脆弱性の利用の問題が発生した際、よく聞かれた質問のひとつが、バッファオーバーフローがなければ脆弱性の利用は不可能だったのではないかということでした。最近まで、セキュリティ専門家は、ゼロデイの脆弱性に対し、ファジングやバッファオーバーフロー対策を重要視していました。しかし、一般的なOS、アプリケーションにあるこれらの設計上の欠陥により、バッファオーバーフローやメモリの破損を利用しなくても、正規の方法を使用して、信頼できないソースからのライブラリ、実行ファイルをロードすることができます。

元のアドバイザリでは、iTunesが例として使われていましたが、多くのアプリケーションに同じ欠陥が存在する可能性が高いといえます。攻撃者は、アプリケーションによって開かれると外部のライブラリが無防備にロードされる文書またはメディアファイルを、遠隔地に植え付けます。ファイルが開かれると、悪質なライブラリが遠隔地からロードされます。

以下の例では、マイクロソフト社のアプリケーションがネットワークドライブであるQ:\から「screen」という名前の文書ファイルをロードし、同じQ:\ドライブで必要なDLLを探し出そうとしています。

DLLはネットワークドライブであるQ:\からロードされて実行されます。

McAfee VirusScan Enterpriseのユーザーは、信頼できないファイルの格納場所から「*.dll」、「*.ocx」にアクセスできないようにする保護ルールを設定、テスト、利用することができます。ただし、このような場所で文書を共有することはあっても、プログラムライブラリをロードする可能性はあまりありません。

この例では、NOTEPAD.EXEがネットワークドライブからDLLを読み取ろうとしますが、操作は阻止されます。

注:このルールにより、悪質でないアプリケーションもネットワークドライブから実行できなくなる可能性があります。環境ごとにテストしてください。

McAfee Labsは、この手法の利用が実際に行われていないか厳重に監視し、調査で得られた詳細な情報を提供していきます。

※本ページの内容はMcAfee Blogの抄訳です。
原文:Insecure Library Loading in OS and Applications

Also Find Us On

マカフィーは、インテルコーポレーション(NASDAQ:INTC)の完全子会社であり、企業、官公庁・自治体、個人ユーザーが安全にインターネットの恩恵を享受できるよう、世界中のシステム、ネットワーク、モバイルデバイスを守るプロアクティブで定評のあるセキュリティソリューションやサービスを提供しています。詳しくは、http://www.mcafee.com/jp/をご覧ください。

 

Copyright © 2003-2014 McAfee, Inc. All Rights Reserved.