
研究者らは、レート制限のない連絡先検索APIを悪用し、35億件のWhatsApp携帯電話番号と関連する個人情報のリストを作成しました。
チームはこの問題をWhatsAppに報告し、その後、同様の悪用を防ぐためにレート制限による保護が追加されました。
今回の調査は、データを公開していない研究者によって行われたものですが、公開され保護されていないAPIから脅威アクターがユーザー情報をスクレイピングする際によく使う手口を示しています。
WhatsApp APIの悪用
ウィーン大学とSBA Researchの研究者らは、WhatsAppの連絡先検索機能を利用しました。この機能では、プラットフォームのGetDeviceList APIエンドポイントに電話番号を送信し、その番号がアカウントに紐づいているか、どのデバイスで利用されているかを確認できます。
厳格なレート制限がなければ、このようなAPIはプラットフォーム全体に対する大規模な列挙に悪用される可能性があります。
研究者らは、WhatsAppにおいてまさにこの状況が当てはまることを発見しました。彼らはWhatsAppのサーバーに大量のクエリを直接送信し、1時間あたり1億件以上の番号をチェックすることができました。
彼らは、わずか5つの認証済みセッションを用いて、1台の大学サーバーから全作業を実行しましたが、当初はWhatsAppに検知されると予想していました。しかし、プラットフォームはアカウントを一切ブロックせず、トラフィックを制限せず、IPアドレスを制限せず、1台のデバイスからこれほどの不正な活動が行われていたにもかかわらず、連絡を取ってくることもありませんでした。
その後、研究者らは世界中の潜在的な携帯電話番号630億件のセットを生成し、すべてをAPIに対してテストしました。その結果、35億件のアクティブなWhatsAppアカウントが返されました。
この結果から、WhatsAppが世界でどのように利用されているかについて、これまで知られていなかったスナップショットも得られ、どの地域で最も利用されているかが示されました。
- インド: 7億4900万
- インドネシア: 2億3500万
- ブラジル: 2億600万
- アメリカ合衆国: 1億3800万
- ロシア: 1億3300万
- メキシコ: 1億2800万
また、中国、イラン、北朝鮮、ミャンマーなど、当時WhatsAppが禁止されていた国々でも、数百万件のアクティブアカウントが確認されました。イランでは、2024年12月に禁止が解除された後も利用が増え続けています。
研究者らは、電話番号がWhatsAppで利用されているかどうかを確認するだけでなく、他のAPIエンドポイントも利用してユーザーに関する追加情報を列挙しました。その中には、GetUserInfo、GetPrekeys、FetchPictureなどが含まれます。
これらの追加APIを用いることで、研究者らはプロフィール写真、「自己紹介」テキスト、そしてWhatsAppの電話番号に紐づく他のデバイスに関する情報を収集することができました。
米国の番号を対象にしたテストでは、レート制限なしで7700万件のプロフィール写真がダウンロードされ、その多くに識別可能な顔が写っていました。公開された「自己紹介」テキストがある場合、個人情報や他のソーシャルアカウントへのリンクも明らかになりました。
最後に、研究者らが今回の調査結果を2021年のFacebook電話番号スクレイピングと比較したところ、漏えいしたFacebookの電話番号の58%が、2025年時点でもWhatsAppでアクティブであることが判明しました。研究者らは、大規模な電話番号漏えいがこれほどまでに深刻なのは、その情報が他の悪意ある行為に何年も利用され続ける可能性があるためだと説明しています。
「35億件のレコード(すなわちアクティブアカウント)を分析する本データセットは、責任ある研究の一環として収集されたものでなければ、我々の知る限り史上最大のデータ漏えいと分類されるでしょう」と、論文「Hey there! You are using WhatsApp: Enumerating Three Billion Accounts for Security and Privacy」は説明しています。
「このデータセットには、電話番号、タイムスタンプ、自己紹介テキスト、プロフィール写真、E2EE暗号化用の公開鍵が含まれており、その流出は対象ユーザーに深刻な影響を及ぼすことになります。」
その他の悪意あるAPI悪用事例
WhatsAppのAPIにレート制限がなかったことは、オンラインプラットフォーム全般に広く見られる問題を象徴しています。APIは情報共有や各種処理を容易にするよう設計されていますが、その一方で大規模スクレイピングの経路にもなり得ます。
2021年には、脅威アクターがFacebookの「友達を追加」機能のバグを悪用しました。この機能では、電話から連絡先リストをアップロードし、それらの連絡先がプラットフォーム上に存在するかどうかを確認できます。しかし、このAPIもリクエストに対して適切なレート制限を行っておらず、脅威アクターは5億3300万ユーザー分の電話番号、Facebook ID、氏名、性別を含むプロファイルを作成することができました。
Metaは、そのデータが適切な保護措置を欠いたAPIに対する自動スクレイピングによって取得されたものであると後に確認し、アイルランドのデータ保護委員会(DPC)はこの漏えいに対してMetaに2億6500万ユーロの罰金を科しました。
Twitterも、攻撃者がAPIの脆弱性を悪用して電話番号やメールアドレスを5400万件のアカウントに紐づけたことで、同様の問題に直面しました。
Dellは、攻撃者が保護されていないAPIエンドポイントを悪用した結果、4900万件の顧客レコードがスクレイピングされたことを公表しました。
これらすべてのインシデント(WhatsAppの事例を含む)は、アカウントやデータの検索を行うAPIに十分なレート制限が実装されていなかったことが原因であり、そのため大規模な列挙攻撃の格好の標的となっていました。