サイバーセキュリティ企業のGuardicoreは2021年9月23日(現地時間)、「Autodiscovering the Great Leak - Guardicore」において、Microsoft Exchangeで使われる自動検出機能にWindowsドメインの資格情報が漏洩する設計上の欠陥が発見されたことを伝えた。Guardicoreが4月16日から8月25日までに実施した実験では、合計で372,072件のWindowsドメインの資格情報と、96,671件のMicrosoft Outlookをはじめとする各種アプリケーションから漏洩した一意の資格情報をキャプチャすることに成功したという。

Exchangeの自動検出プロトコルは、Outlookなどのクライアントアプリケーションが構成情報を自動で設定する際に利用される。この機能を利用することで、ユーザー名とパスワードを入力するだけで、Outlookなどのクライアントの初期設定を完了させることができる。

Guardicoreのレポートは、この自動検出機能にWindowsドメインやクライアントアプリケーションの資格情報が漏洩する構造的な欠陥を発見したというもの。漏洩の原因は次の2つの問題によるものだという。

自動検出プロトコルにおける「バックオフ」アルゴリズムの設計に欠陥がある
一部のアプリケーションで、このプロトコルの実装が不十分である

この自動検出プロトコルでは、クライアントはユーザーの電子メールアドレスをもとに自動検出のためのURLを自動生成するが、そのURLがいずれも応答しない場合は「バックオフ」と呼ばれる手順を実施するという。この「バックオフ」メカニズムでは「autodiscover.com」のドメインを使った自動検出URLを作成してリクエストを送信するため、「autodiscover.com」のドメインを所有している管理者が元のドメインに到達できないすべてのリクエストを受け取るこできる。

Guardicoreの実験では、「autodiscover.com.br」など複数のドメインを取得してリクエストを待ち続けたところ、Exchangeクライアントからエンドポイントを自動検出するリクエストが大量に届き始めたとのこと。さらに、そのリクエストの中にはHTTP Basic認証の資格情報が入力済みのAuthorizationヘッダーを使用したものも多数含まれていたという。このように、盲目的に事前認証された状態のリクエストを送る手順はHTTP Basic認証のプロセスとしては正しくない。

Guardicoreのレポートでは、この漏洩の問題を軽減するには2つの異なるアプローチが必要と説明されている。1つのアプローチはOutlookなどのクライアントアプリケーションを利用する一般ユーザーが、autodiscover.comなどの自動検出URLをファイアウォールで積極的にブロックすることである。もう1つのアプローチは、製品に自動検出プロトコルを実装するソフトウェアベンダーや開発者が、バックオフアルゴリズムを実装しないことだ。

Guardicoreでは、この調査結果をMicrosoftと共有し、顧客を保護するための適切な措置を講じていくとのことだ。