新たな攻撃により、HTTPS ページから社会保障番号や電子メール アドレスなどが盗まれる

新たな攻撃により、HTTPS ページから社会保障番号や電子メール アドレスなどが盗まれる

HEISTエクスプロイト

このアプローチは、HTTPS 応答が伝送制御プロトコルを介して配信される方法を利用します。

水曜日に予定されているデモでは、nytimes.com にホストされている広告が他の HTTPS で保護されたサイトにどのように攻撃できるかが示されます。クレジット: Vanhoef、Van Goethem

水曜日に予定されているデモでは、nytimes.com にホストされている広告が他の HTTPS で保護されたサイトにどのように攻撃できるかが示されます。クレジット: Vanhoef、Van Goethem

数百万の Web サイトを保護している HTTPS 暗号化スキームは、攻撃者が標的のエンド ユーザーのインターネット接続を監視できない場合でも、暗号化された電子メール アドレス、社会保障番号、その他の機密データを公開する、新たに復活した攻撃に対して脆弱です。

このエクスプロイトが注目すべき点は、中間者攻撃を必要としないことです。エンドユーザーは、Web広告に隠された、あるいはWebページ上に直接ホストされている、一見無害そうなJavaScriptファイルに遭遇するだけで済みます。悪意のあるコードは、セキュアソケットレイヤー(SSL)やトランスポート層セキュリティプロトコルで保護された様々なページを照会し、送信される暗号化データの正確なファイルサイズを計測できます。その名前が示すように、HEIST(HTTP Encrypted Information Can be Stolen Through TCP-Windows)という手法は、インターネットの最も基本的な構成要素の一つであるTCP(Transmission Control Protocol)を介してHTTPSレスポンスが配信される仕組みを悪用することで機能します。

攻撃者は暗号化されたレスポンスのサイズを把握すると、以前に考案された2つのエクスプロイトのいずれかを使用して、その中に含まれる平文を自由に抽出できます。BREACHエクスプロイトとCRIMEエクスプロイトはどちらも、サイトがページの読み込みを高速化するために使用するファイル圧縮を操作してペイロードを復号できます。HEISTは水曜日にラスベガスで開催されるBlack Hatセキュリティカンファレンスで初めて実演されます。

「HEISTは多くの攻撃の実行をはるかに容易にします」と、この手法を考案した研究者の一人、トム・ヴァン・ゲーテム氏はArsに語った。「以前は、CRIMEやBREACHといった攻撃を実行するには、攻撃者が中間者攻撃を行う必要がありました。今では、悪意のある者が所有するウェブサイトにアクセスするだけで、オンラインセキュリティを危険にさらすことになります。」

HEISTとBREACHを組み合わせることで、攻撃者は暗号化されたレスポンスに含まれるメールアドレス、社会保障番号、その他の小さなデータ断片を抽出し、復号化することができます。BREACHは、HTTPSリクエストにインテリジェントな推測(メールアドレスの場合は@gmail.comなど)を含め、レスポンスにエコーすることでこれを実現します。ほぼすべてのウェブサイトで使用されている圧縮は、テキスト文字列の重複を排除することで機能するため、正しい推測であればデータサイズは目立った増加はありませんが、間違った推測であればレスポンスのサイズが大きくなります。

HTTP圧縮はDeflateアルゴリズムに基づいています。このアルゴリズムは、HTMLドキュメント内の「value=」などの繰り返し文字列の最初のインスタンスのみを保存し、その繰り返しごとにスペースを節約するポインタを使用することで、データストリームを短縮します。一般的に、データストリーム内で同一文字列の繰り返しが多いほど、圧縮によって全体のサイズを削減できる可能性が高くなります。

HTTPSで保護されたレスポンスのサイズを決定するために、攻撃者はオラクル技術を用いて、それぞれの推測に対して「はい」か「いいえ」のレスポンスを返すようにします。「value=」を含むリクエストで同じデータサイズが返された場合、攻撃者はその文字列が暗号化されたレスポンスに含まれていることを認識し、次の文字(例えば「value=0」)を含むように推測を修正しようとします。その推測によってファイルサイズが大きくなる場合、攻撃者はそれが間違っていることを認識し、「value=1」、「value=2」などを試します。新しい推測でもファイルサイズが増加しないレスポンスが得られるまで、攻撃者はこれを繰り返します。攻撃者は次の文字を推測し、トークン全体が復元されるまでこのプロセスを繰り返します。

お近くで Web ドライブバイに参加しませんか?

これまで、このBREACHスタイルのエクスプロイトを利用するには、攻撃者がWebサーバーとエンドユーザー間のトラフィックを積極的に操作する必要がありました。HEIST対応のBREACHエクスプロイトは、この制限を取り除きます。TCPの特性を準暗号化サイドチャネルとして利用し、HTTPSレスポンスのサイズを測定することでこれを実現します。TCPは、大きな送信データをフレームと呼ばれる小さな固定サイズのチャンクに分割し、さらにフレームをTCPウィンドウと呼ばれる領域にグループ化します。このウィンドウは1つずつ送信されます。TCPは、エンドユーザーが前のウィンドウからのフレームを受信したことを確認した後でのみ、新しいウィンドウを送信します。

HEISTは、新たに承認された一連のAPI(Resource TimingとFetch)と連携することで、送信されたフレームとウィンドウの数をカウントできます。このプロセスにおいて、JavaScriptの一部がHTTPSレスポンスの正確なサイズを判定します。その後、悪意のあるHEISTコードはBREACHと連携して、リクエストに数千もの推測値を追加し、結果として得られるレスポンスのサイズを分析することで、暗号化されたレスポンスから平文の断片を抽出します。

ヴァン・ゲーテム氏と研究仲間のマシー・ヴァンホフ氏は、既にGoogleとMicrosoft両社の研究者に研究結果を開示している。つまり、水曜日のデモンストレーションは彼らにとって意外なものではないだろう。しかし、Gmail、バンク・オブ・アメリカ、その他の現実世界のサイトに対するこの攻撃がどれほど現実的かと問われたヴァン・ゲーテム氏は、次のように答えた。

時間をかけて複数のウェブサイト向けのエクスプロイトを作成し、悪意のあるサイト(悪意のあるサイトである必要はなく、悪意のあるJavaScriptファイルが存在する可能性もあり、その可能性は数多くあります)にアクセスすることで、甚大な被害をもたらす可能性があります。おそらく最も大きな被害をもたらすのは、攻撃者がCSRFトークンを読み取れるBREACH脆弱性を悪用した場合です。ウェブサイトの機能によっては、CSRFトークンを入手した攻撃者が被害者のアカウント全体を乗っ取ってしまう可能性もあります。

すべてのウェブサイトのリクエストとレスポンスを詳細に調べたわけではありませんが、ユーザーとしては最悪の事態を想定すべきです。攻撃者は、秘密トークンを含み、レスポンスにリクエストの一部が反映されているエンドポイントを1つ見つけるだけで、このトークンを抽出できます。前述したように、このトークンが分かれば、通常はユーザーのアカウントを侵害するのに十分です。

ヴァン・ゲーテム氏は、HTTPSサイトから送信されるレスポンスが被害者と関連付けられなくなるため、サードパーティCookieを無効にすることが唯一の緩和策だと述べた。現在、ほとんどのWebブラウザはデフォルトでサードパーティCookieの受信を有効にしており、サードパーティCookieを許可しないと動作しないオンラインサービスもある。

水曜日のデモでは、ニューヨーク・タイムズのウェブサイトに表示される悪意のある広告が、架空の第三者サイト「targetwebsite.com」から送信される暗号化されたレスポンスのサイズを、いかにして丹念に計測するかを実演します(下図参照)。さらに、その情報を用いて、クロスサイト・リクエスト・フォージェリ攻撃を防ぐためのセキュリティトークンに含まれる文字を推測する方法も紹介します(本記事冒頭の画像参照)。

HEISTは、すべてのWebトラフィックを暗号化する従来のHTTP標準の代替となるHTTP/2にも有効です。場合によっては、HEISTはHTTP/2の新機能を悪用して、被害を拡大させることもあります。

「HTTP/2が使用されていることが分かれば、ブラウザは対象のリソースと、リフレクションされたコンテンツを含む別のリソースを同時にリクエストできるようになります」と、ヴァンホフ氏とヴァン・ゲーテム氏は未発表の研究論文に記している。「HTTP/2が使用されているため、両方のリクエストはサーバーに並行して送信され、サーバーもそれらに並行して応答します。」

HEISTとBREACHの組み合わせが、実際にHTTPSで保護されたウェブサイトにアクセスするユーザーに対して悪用されるかどうかはまだ分かりません。Van Goethem氏は、クロスサイトスクリプティング(XSS)、SQLインジェクション、クロスサイトリクエストフォージェリ攻撃に対するウェブサイトの防御力が強化されるにつれて、HEISTがより魅力的なエクスプロイトになる可能性が高いと述べています。BREACHが実際に悪用されたという兆候は今のところありませんが、HEISTがもたらす新たな利便性によって、状況が変わる可能性があります。

「ウェブサイトがどのようなセキュリティ対策を講じていても、ほとんどのウェブサイトはBREACH攻撃に対して脆弱なままです(この攻撃は3年前から存在していますが、軽減策は講じられていません。おそらく、軽減策を講じるのは容易ではないためでしょう)。」と彼は電子メールで述べています。「HEIST攻撃の唯一の要件は、被害者が(悪意のある)ウェブサイトにアクセスするだけであるという事実と相まって、BREACH攻撃のような攻撃がHEIST攻撃よりもアカウント侵害の最も容易な手段になる可能性が高いと考えています。」

リスト画像はAcid the Meme Machineによるものです。

ダン・グッディンの写真

ダン・グッドインはArs Technicaのシニアセキュリティエディターとして、マルウェア、コンピュータースパイ、ボットネット、ハードウェアハッキング、暗号化、パスワードなどの記事を担当しています。余暇にはガーデニング、料理、インディーズ音楽シーンの追及を楽しんでいます。サンフランシスコを拠点としています。MastodonのこちらとBlueskyのこちらでフォローしてください。SignalのDanArs.82までご連絡ください。

96件のコメント

  1. 最も読まれている記事の最初の記事のリスト画像:イーロン・マスクは、アップルと携帯電話会社にスターリンクのライバルを選んだことを後悔させようとしている