Apple の新しい iCloud プライベート リレーで発見された欠陥により、特定の条件が満たされた場合にユーザーの IP アドレスが公開されるため、この機能の存在意義が無効になります。

研究者兼開発者の Sergey Mostsevenko 氏が今週のブログ投稿で詳述したように、Private Relay の WebRTC 処理の欠陥により、ユーザーの実際の IP アドレスが「漏洩」する可能性があります。概念の実証は、FingerprintJS で利用できます。Webサイト

6月のWorldwide Developers Conferenceで発表された、プライベートリレー2 つの異なるエンティティが運営する 2 つの別々のリレーを介してインターネット要求をルーティングすることで、第三者による IP アドレス、ユーザーの位置、その他の詳細の追跡を防ぐことを約束します。 Apple によると、プライベート リレーを通過するように構成されたインターネット接続では、ユーザーの地域にマッピングされる匿名 IP アドレスが使用されますが、ユーザーの正確な位置や身元は明らかにされません。

理論上、Web サイトは出力プロキシの IP アドレスのみを参照する必要がありますが、特定の WebRTC 通信シナリオで保持されるユーザーの実際の IP は、いくつかの巧妙なコードを使用して推測できます。

Mostsevenko 氏が説明したように、WebRTC API は、中間サーバーを必要とせずに Web 上での直接通信を容易にするために使用されます。ほとんどのブラウザに導入されている WebRTC は、対話型接続確立 (ICE) フレームワークを利用して 2 人のユーザーを接続します。 1 つのブラウザは ICE 候補 (潜在的な接続方法) を収集し、2 番目のブラウザとのリンクを見つけて確立します。

この脆弱性は、NAT (STUN) サーバーのセッション トラバーサル ユーティリティが NAT の背後にあるデバイスに接続するために使用する候補である Server Reflexive Candidate にあります。ネットワーク アドレス変換 (NAT) は、複数のデバイスが単一の IP アドレスを介してインターネットにアクセスできるようにするプロトコルです。重要なのは、STUN サーバーはユーザーのパブリック IP アドレスとポート番号を共有することです。

「Safari は iCloud プライベート リレーを介して STUN リクエストをプロキシしないため、STUN サーバーは実際の IP アドレスを知っています。他の情報がないため、これ自体は問題ではありません。ただし、Safari は実際の IP アドレスを含む ICE 候補をJavaScript 環境です」とモストセブンコ氏は言います。 「匿名化を解除するには、ICE 候補から実際の IP アドレスを解析する必要があります。これは Web アプリケーションで簡単に実行できます。」

研究者によると、ユーザーのIPアドレスは、STUNサーバーとの接続オブジェクトを作成し、ICE候補を収集して値を解析することで収集できるという。

ハッカーニュースFingerprintJS の発見について報告しました金曜日に

FingerprintJS はこの欠陥を Apple に報告し、同社は最新の修正プログラムをリリースしました。macOS モントレーベータ版がリリースされました今週。脆弱性はパッチが適用されていないままですiOS15