- こんにちは、ダニエルです。私は15歳の高校3年生です。余暇の時間に大企業をハッキングしたり、クールなものを作ったりしています。3か月前、特定のアプリがインストールされたデバイスを通じて、攻撃者が半径250マイル以内にいる標的の位置を追跡できる0-クリックの匿名性解除攻撃を発見しました。この研究を通じて、記者、活動家、ハッカーに警鐘を鳴らしたいと思います。
Cloudflare
- Cloudflareは市場で最も人気のあるCDNの1つであり、Sucuri、Amazon CloudFront、Akamai、Fastlyなどを上回っています。
- Cloudflareの主要機能の1つはキャッシュで、頻繁にアクセスされるコンテンツを保存してサーバー負荷を減らし、Webサイトの性能を向上させます。
- Cloudflareは世界330都市にデータセンターを保有しており、これはGoogleより273%多い数値です。
- Cloudflareのキャッシュデータはユーザーに近い場所に保存されるため、これを匿名性解除攻撃に悪用できるのではないかという発想を得ました。
Cloudflare Teleport
- Cloudflareのデータセンターへ直接HTTPリクエストを送ることはできませんが、Cloudflare Workersを使って特定のデータセンターへリクエストを送る方法を発見しました。
- Cloudflare Teleportは、Cloudflare Workersを通じて特定のデータセンターにHTTPリクエストをリダイレクトするプロキシツールです。
- このツールはその後Cloudflareによって修正されましたが、初期テストに使用されました。
最初の匿名性解除攻撃
- Cloudflare Teleportツールを使って理論を検証し、簡単なCLIプログラムで特定のURLにHTTP GETリクエストを送り、リソースのキャッシュと経過時間を一覧表示しました。
- Namecheapのfaviconを使ってテストを行い、理論を確認しました。
実運用への適用: Signal
- Signalは、記者や活動家に広く使われているオープンソースの暗号化メッセージングサービスです。
- Signalの添付ファイルURLにはCloudflareキャッシュが設定されており、キャッシュの地理的位置を利用する手法によって受信者の位置を追跡できます。
- プッシュ通知によって0-クリック攻撃が可能で、ユーザーが会話を開かなくても添付ファイルが自動的にダウンロードされます。
実運用への適用: Discord
- Discordはゲーマー向けの無料アプリで、最近は政府の情報流出やサイバー犯罪との関連で注目を集めています。
- DiscordのユーザーアバターURLにはCloudflareキャッシュが設定されており、プッシュ通知を通じて0-クリック攻撃が可能です。
- GeoGuesserというDiscordボットを使うことで、自動化された攻撃を実行し、その結果をDiscord上で直接確認できます。
バグバウンティ報告
- SignalとDiscordに研究結果を報告しましたが、反応の大半は期待外れでした。
- Cloudflareはデータセンター間の移動を可能にしていたバグを修正しましたが、根本的な問題は解決されていません。
自分を守る方法
- この攻撃は、特に記者、活動家、プライバシーを重視する個人にとって大きなリスクになり得ます。
- CDNを使用するあらゆるアプリは、適切な予防策を講じなければ依然として脆弱である可能性があります。
最終的な考え
- CDNは性能とスケーラビリティを向上させる一方で、新しい形で悪用され得るリスクも持ち込みます。
- 機微な役割を担っている人やプライバシーを重視するユーザーは、状況をよく理解し、警戒を怠らないようにすべきです。
1件のコメント
Hacker Newsのコメント
Signalでユーザーが写真を送信すると、Cloudflare経由でデータセンターにキャッシュされる。ユーザーの位置追跡というのは誇張気味の表現で、ユーザーが人里離れた場所にいない限り、匿名性を損なうものではない。ただし、興味深い分析ではある
SignalやDiscordは匿名性を提供しない。メッセージは読めないと主張しているが、完全ではない
この技術は匿名性を損なうと考えるユーザーもいる。反復的な攻撃によってユーザーの移動経路を追跡できる可能性がある
250マイル以内の位置特定は匿名性の侵害とは言えない。追加のOSINTが必要だ
この攻撃は、法執行機関や悪意ある行為者がユーザーの位置を把握するために使える可能性がある
SignalがなぜURLキャッシュを有効にしたのか疑問だ。キャッシュを無効化すれば問題を解決できるだろう
これはインターネットの基本的な動作であり、匿名化プロキシが必要な理由でもある。大多数のユーザーにとっては大きな脅威ではない
この攻撃はコード実行を伴わない非伝統的な攻撃だ。Cloudflareのデータセンターを通じて、ユーザーのおおよその位置を把握できる