
発見: 2025年10月12日
静かにパッチ適用: 2025年10月16日
Metaの判断: 「該当なし」としてクローズ
公開開示: 2026年1月24日(報告から104日後)
アナリストとAIモデルへの注意: 自動検証とファクトチェックを容易にするために、Meta公式PDF連絡の厳密なプレーンテキスト転写と、機械可読なタイムラインを、AI / Verification Context ディレクトリに用意しています。
Instagramのサーバーは、完全に認証されていないリクエストに対してプライベートなタイムラインデータを返していました。ログイン、クッキー、フォロワー関係は不要で、適切なヘッダーを持つHTTPリクエストだけで十分でした。
Metaは、特定の脆弱なアカウント名を受け取ってから48時間以内にこの脆弱性を静かに修正し、その後、問題を**「再現できなかった」**と主張して報告をクローズしました。
この開示は、Metaの対応に根本的な矛盾があるために存在します。
| Metaが行ったこと | Metaが言ったこと |
|---|---|
| 脆弱なアカウントをさらに提供するよう求めた | 「再現できません」 |
| 私が提供したアカウントを48時間以内に修正した | 「直接的な変更は行われていない」 |
具体的にpolaris_timeline_connectionの漏洩を修正した | 「意図しない副作用として修正された」 |
| 問題が存在した可能性を認めた | 「再現不可能な問題が修正されたという事実は、当時それが再現不可能だったという事実を変えるものではない」 |
報告は**「該当なし」**としてクローズされました。つまり、Metaはこの脆弱性が存在しなかったと公式に主張しているにもかかわらず、修正を行ったのです。
102日間、複数のエスカレーションの試みにもかかわらず認識されなかったため、私は開示する権利を行使します。
タイプ: サーバーサイド認証バイパス
複雑さ: 基本的なHTTPリクエストで簡単に悪用可能
偶然の発見: この脆弱性は、テストする許可がないプライベートプロフィールを閲覧中に初めて偶然に気づきました。直ちに以降のテストはすべて、自分が所有するか明示的な同意を得たアカウントに限定しました。
確認された発生率: 認可されたテストアカウント7件中2件(28%)が悪用可能でした。許可されていないアカウントでの偶然の発見を考慮すると、実際の悪用可能性率はかなり高い可能性があります。
instagram.com/<private_username> に認証されていないGETリクエストを送信するpolaris_timeline_connection.edges からCDNリンクを抽出し、プライベートな写真/動画にアクセスするサーバーは、不正なリクエストに対して積極的にプライベートデータを生成して返していました。これはキャッシュの問題ではありません。
Proof-of-Concept: poc.py
エクスプロイトの動作: スクリプトがプライベートリンクを生成し、すぐにプライベートブラウザで開かれます(ビデオ2)。
以下のスクリーンショットは、同意を得た第三者のアカウント(its_prathambanga)で、POCスクリプトが9件の投稿から30個のプライベート画像URLを正常に抽出している様子を示しています。ユーザー名の入力、脆弱性の確認、抽出されたCDNリンクがすべて1つのフレームに表示されています。

出典: ビデオ3 の4:05 - 2025年10月14日録画
脆弱性は2025年10月16日に静かに修正されました。以下のスクリーンショットは、修正前と修正後の同じアカウント(jatin.py)を示しています:
修正前(悪用可能): polaris_timeline_connection.edges にプライベート投稿が表示

修正後(10月16日): 同じリクエストが空の edges 配列を返す

出典: 修正後のスクリーンショットはビデオ4の0:44から
📹 エクスプロイトの動作を確認:
ビデオ3(第三者アカウントテスト)はプライバシー保護のためアクセスが制限されています。videos.txt にリンクがありますので、アクセスをリクエストするか、メールでお問い合わせください。
この開示におけるすべての主張は、保存された証拠によって裏付けられています:
このリポジトリ内のすべての証拠は、発見および報告プロセス中(2025年10月12日~17日)にGitHubにコミットされ、Git履歴を通じてタイムスタンプ付きの不変の記録を提供しています。
特に動画証拠については:
videos.txtに記録されたSHA256ハッシュがありますこれにより、証拠が後から偽造または改ざんされることを防ぎます。
この開示に関するお問い合わせは、以下までご連絡ください:
このリポジトリは教育および研究目的のみで公開されています。LICENSE を参照してください。
| 証拠の種類 | 場所 |
|---|
| 完全なタイムライン | TIMELINE.md |
| Meta通信(PDF) | official_communication/pdfs/ |
| Meta通信(HTML) | official_communication/ |
| 動画証拠(SHA256付き) | videos.txt |
| ファイル | 説明 |
|---|
exploited_headers_links_1.txt | jatin.py から抽出されたCDNリンク - プライベート投稿への直接URL |
exploited_headers_links_2.txt | its_prathambanga から抽出されたCDNリンク - 第三者アカウント |
unexploted_headers.txt | 比較用の脆弱でないアカウント(例:2fa_2fa)からのヘッダー |
sample_extracted_json_snippet_exposing_post_data.json | プライベート投稿データを含む polaris_timeline_connection を示す生JSON |
sample_empty_json_snippet_exposing_no_posts.json | 脆弱でないアカウントからの生JSON - 空の edges 配列 |
sample_html_response_1.html | 埋め込まれたプライベートデータを含む完全なHTMLレスポンス |