はじめに:「Always-On VPN」が効かない衝撃の脆弱性

2026年5月、Android 16のVPNバイパス脆弱性がセキュリティ研究者によって公開され、プライバシーコミュニティに衝撃が走った。最も問題なのは、Googleがこの脆弱性を「修正しない」と公式に回答したことだ。

多くのユーザーはスマホのVPN設定で「Always-On VPN」と「VPN外への接続をブロック」を有効にすれば完全に守られると信じている。だが、Android 16では特定のAPIを悪用することで、その保護を完全に回避し、実際のIPアドレスを外部に漏洩させることができる。

この記事では、脆弱性の仕組み・Googleの対応・そしてGrapheneOSだけが提供できる保護について徹底解説する。


脆弱性の核心:QUIC API「registerQuicConnectionClosePayload」

Android 16に導入されたregisterQuicConnectionClosePayloadというAPIが問題の発端だ。

このAPIはINTERNETACCESS_NETWORK_STATEという2つの権限さえあれば呼び出せる。そしてこのAPIを使うと、任意のUDPペイロードをsystem_server(UID 1000)経由で外部サーバーに送信できてしまう。

system_serverはUID 1000で動作するシステムプロセスであり、VPNのルーティングルールが適用されない特殊な扱いを受ける。これにより、VPNトンネルを通らずに直接インターネットへパケットが送出される仕組みだ。

概念実証(PoC)で確認された事実

セキュリティ研究者のlowlevel.funが公開したPoCでは、以下の条件下でIPアドレスの漏洩が確認された:

  • 端末:Pixel 8
  • OS:Android 16
  • VPN:Proton VPN
  • 設定:Always-On VPN +「VPN外への接続をブロック」(ロックダウンモード)

この条件はVPNユーザーが取りうる「最高レベルの設定」だ。それでも本物のIPアドレスが外部に漏洩することが実証された。


Googleの回答:「脅威モデル外」として修正拒否

研究者はこの脆弱性をAndroid Vulnerability Rewards Program(VRP)に報告した。Googleからの回答は衝撃的なものだった:

「これは私たちの脅威モデル(threat model)の範囲外です」

要するに、「VPNバイパスによるIPアドレス漏洩はセキュリティ問題として修正する対象ではない」というのがGoogleの公式立場だ。

VPNノーログポリシーが信頼できない本当の理由でも指摘してきたとおり、VPNの信頼性はプロバイダーだけでなくOSレベルの実装にも依存している。Googleのこの判断は、そのリスクを改めて証明する形となった。


GrapheneOSの対応:独自パッチで先手を打つ

GrapheneOSは、Googleが修正を拒否したこの脆弱性に対して独自にパッチを実装した。

2026050400リリース(2026年5月4日)

  • disable registerQuicConnectionClosePayload optimization to fix VPN leak として独自パッチを実装
  • 問題のAPIがVPNバイパスに利用されることをブロック

2026050600リリース(2026年5月6日)

  • 上記パッチを継承・維持
  • 追加のセキュリティ改善を含む最新版

GrapheneOS完全ガイド2026でも詳しく解説しているが、GrapheneOSはAndroid AOSPのセキュリティギャップを独自に塞ぐことをプロジェクトの使命としている。今回のケースはその典型例だ。

GrapheneOS開発チームはGoogleのOSを使用しながらも、Googleが「直さない」と決めた脆弱性に対して独立してパッチを当てる体制を持っている。これがGrapheneOSとノーマルAndroidの本質的な違いだ。


影響を受けるユーザー

この脆弱性の影響を受けるのは以下のユーザーだ:

  • Android 16を使用しているすべての標準Androidユーザー
  • VPN(Proton VPN、Mullvad VPN等)を利用しているユーザー
  • Always-On VPN + ロックダウンモードを設定しているユーザー

保護されているユーザー:

  • GrapheneOS最新版(2026050400以降)のユーザー

VPN脆弱性の悪用で500GBデータが3日間流出した事件が示すように、「VPNを使っているだけで安全」という思い込みこそが最大のリスクだ。


DNSリーク・QUICリーク:VPNバイパスの構造的問題

今回のQUICリークはDNSリークと構造的に同じ問題だ。どちらも「VPNトンネルをバイパスして実際のIPを外部に送信する」という本質は変わらない。

VPNはもともと「特定の通信路を暗号化する」ツールであり、OS全体の通信を完全にコントロールするように設計されていない。今回の脆弱性はその設計上の限界を突いたものだ。

VPNの代替として注目されているNymVPN(ミックスネット型VPN)は、この問題へのアプローチが根本的に異なる。トラフィックを複数の分散ノードで混在させるため、特定のIPバイパス手法が成立しにくい設計になっている。


今すぐできる対策

短期対策

  1. GrapheneOSに乗り換える — 現時点で最も確実な対策。Pixel端末向けに無料で提供されている
  2. VPN一本頼みをやめる — NymVPNのようなmixnet型サービスと組み合わせる
  3. Android 16デバイスでの重要通信を避ける — リスクを把握した上で行動を見直す

長期対策


まとめ

Googleは「Android 16のVPNリークは自分たちの問題ではない」と言い切った。これは単なるバグ放置ではなく、プライバシーよりもシステム最適化を優先するという設計思想の表明だ。

標準AndroidでVPNを使っているすべてのユーザーは、今この瞬間もIPアドレスが漏洩している可能性がある。唯一の確実な解決策は、Googleの判断に依存しないOSを使うことだ。GrapheneOSはその答えをすでに実装している。


GrapheneOS端末を検討している方へ

p-cipher.storeでは、GrapheneOSをプリインストールしたPixel端末を取り扱っています。自分でフラッシュする手間なく、届いた日から完全プライバシー保護環境が整います。今回のVPNリークにも対応済みの最新版を搭載。

p-cipher.storeでGrapheneOS端末を確認する


VPN以外のプライバシー保護も視野に入れたい方へ

AndroidのVPNリーク問題を根本から回避したい場合、NymVPNが選択肢になります。トラフィックを複数のノードで混在させるmixnetアーキテクチャにより、従来のVPNバイパス攻撃が通用しにくい設計です。

NymVPNを試してみる