Vectra Threat Labsのセキュリティリサーチャーは最近、Windows 95までさかのぼるMicrosoft・ウィンドウズの全バージョンに影響を及ぼす重大な脆弱性を発見した。この脆弱性は、攻撃者がローカル・ネットワークまたはインターネットを介してシステム・レベルでコードを実行することを可能にする。その結果、攻撃者はこの脆弱性を利用して、インターネットからエンドユーザーに感染させ、内部ネットワークを通じて拡散させることができる。
Vectra Microsoft社とこの問題の調査において協力し、Microsoft社はSecurity Bulletin MS16-087の一部として修正プログラムを提供しました。
この脆弱性、CVE-2016-3238(MS16-087)、およびCVE-2016-3239は、ユーザーがオフィスやインターネットでプリンターに接続する方法に起因している。この脆弱性により、比較的素朴な攻撃者が攻撃の一環としてIoTデバイスを組み込み、検知されることなく迅速にネットワークに侵入・拡散することが可能となる。このブログではこの脆弱性の概要を説明していますが、詳細な技術的分析についてはこちらをご覧ください。また、脆弱性の概要をまとめた動画もこちらでご覧いただけます。
問題となっている脆弱性は、ネットワーク・ユーザーがネットワーク上のプリンターを見つけ、使用する方法を中心にしている。言うまでもなく、現代の組織には多くのユーザーが存在し、同様に多くの異なるメーカーやモデルのプリンターが存在する。ユーザーは、最も便利なプリンターに接続して使用することを期待し、同様に、モバイルユーザーは、オフィスに来て印刷できることを期待している。
このようなユーザーにサービスを提供するために、組織は必要なプリンタードライバーを必要なユーザーに配信する方法を必要としています。可能な限りのドライバを全ユーザーにプッシュする代わりに、多くのネットワークではMicrosoft Web Point-and-Print (MS-WPRN)アプローチを使用しており、ユーザーはネットワーク上のどのプリンターにも接続でき、プリンターまたはプリントサーバーは必要に応じて適切なドライバを配信します。これを可能な限り簡単かつシームレスにするために、これらのドライバは多くの場合、警告を表示したり、ユーザーアカウント制御(UAC)を起動したりすることなく配信されます。
問題は、これらのドライバがシステムレベルのドライバであり、プリンタに格納されていることである。つまり、Windowsのほぼすべてのエンドユーザーデバイスと会話し、チェックや警告なしにシステムレベルのドライバーを提供するよう信頼されている、セキュリティの弱いデバイスがあるということだ。もしあなたの首の後ろの毛が逆立ち始めていないなら、そうなるはずだ。
ネットワーク上のローカル攻撃者は、有効なドライバを悪意のあるファイルに簡単に置き換えることができる。新しいユーザーがプリンターに接続しようとすると、悪意のあるファイルが配信され、システムレベルの権限で実行され、事実上、マシンのコントロールが攻撃者に引き渡される。このプロセスは無限に繰り返され、プリンターの水飲み場を訪れる新しいユーザーそれぞれに感染する可能性がある。
では、攻撃者はどうやって問題の悪意あるファイルをプリンターに持ち込むのだろうか?攻撃者には複数の選択肢がある。プリンターは多くのサービスが有効になっていることが多く、一般的にパッチはあまり適用されていないため、熟練した攻撃者であれば脆弱性を悪用するのは簡単だ。しかし、さらに簡単な方法としては、admin/adminのようなデフォルトのログイン認証情報を試して、攻撃者が直接プリンターにログインできるようにすることだ。あるいは、攻撃者は偽のプリンターを作ってネットワーク上で宣伝することもできる。
ここまでは、攻撃者がすでにあなたのネットワーク上にいることが前提なので、比較的安全だと感じているかもしれません。しかし、Microsoft Internet Printing ProtocolとWeb PointNPrintを使えば、同じメカニズムがインターネット上で動作する。このため、危険なウェブサイトや広告など、通常のウェブベースのベクターを通じて、インターネット上で感染が行われる可能性がある。広告に含まれるちょっとしたjavascriptが、リモートの「プリンター」へのリクエストを簡単に引き起こし、悪意のあるドライバーを被害者に送りつけることができるのだ。この2つのアプローチを使えば、攻撃者は外部からユーザーを感染させ、新たに得た内部的な地位を利用してネットワーク内で横方向に拡散することができる。
2016年7月12日現在、Microsoftはセキュリティ情報MS16-087の 一部としてこの脆弱性に対するパッチを提供しており、組織はできるだけ早くこのパッチを適用することが強く推奨される。この脆弱性は、IoTデバイスがネットワークのセキュリティポスチャにおいて重要な役割を果たしていることを示す例でもあります。これらのデバイスは、パッチが適用しにくく、監視しにくいため、すぐにセキュリティ運用の永続的な盲点になる可能性があります。これは、デバイスの種類に関係なく、すべての内部トラフィックを監視する良い理由となる。