スマートフォンやノートパソコンには、ケーブルもアカウントも事前のペアリングも不要で、近くにあるデバイスへ無線でファイルを送る機能が標準搭載されています。Appleはこれを「AirDrop」と呼び、GoogleとSamsungは「Quick Share」という名称を使っています。どちらも、別のデバイスが無線圏内に入ると起動する特権バックグラウンドサービスとして動作しており、これまで一度も接続したことのないデバイスから送られてくる、さまざまなシリアライズデータ形式を読み込みます。世界で50億台を超えるアクティブなデバイスが、このいずれかを搭載しています。

CISPA(ヘルムホルツ情報セキュリティセンター)の研究者らは、この両システムを調査し、macOS・iOS・Android・Windowsにまたがる合計6件の脆弱性を発見しました。Arash Ale EbrahimとNils Ole Tippenauerは、アプリケーション層プロトコルをリバースエンジニアリングし、AirDrop向けのカスタムファジャーを開発するとともに、Quick Shareに対しても重点的な分析を実施しました。本研究は、無線(ラジオ)レイヤーより上位の層において、両スタックの動作を横断的に検証した初の事例となります。
攻撃対象領域とテスト環境
近接攻撃を行う攻撃者が必要なのは、Wi-Fi対応のノートパソコンと、通常10〜30メートル以内という無線到達圏内の場所だけです。ペアリングや連絡先の交換、共通ネットワークへの接続は一切不要です。Appleデバイスで受信設定が「全員」になっている場合、プロトコルの初期フェーズはユーザーへの確認プロンプトが表示される前から応答します。Quick Shareも、可視状態になると近くのデバイスへデフォルトで応答します。
AirDropの調査では、sharingdに焦点を当てました。これはmacOSおよびiOSのデーモンで、AirPlay・Handoff・ユニバーサルクリップボード・Continuity Cameraも同じプロセスで動作しています。サブシステムの一つがクラッシュすると、残り全てが道連れになります。Quick Shareの調査には、Samsung Galaxy S23 UltraとGoogleのWindowsクライアントを使用しました。
より深いコードパスに到達するため、チームはデータが圧縮される前に生のアーカイブ内容を変異させるカスタムファジャーを開発しました。このアプローチにより、サーバーが受け入れる入力の割合がごく僅かから90%超へと大幅に向上し、アーカイブ処理コードを実質的にテストできるようになりました。
Apple共有デーモンにおけるクラッシュ
AirDropで発見された3件の問題は、いずれもクラッシュに至ります。最も単純なものは、パスによって受信Webリクエストをルーティングするコード内にあるSwiftのfatalError呼び出しに起因します。認識されないパスへのリクエストがこの呼び出しに到達し、プロセス全体が強制終了されます。短いリクエスト1件だけで、AirDrop・AirPlay・Handoff・ユニバーサルクリップボード・Continuity Cameraがまとめてダウンします。数秒おきにこれをループ送信し続けることで、サービスを継続的に停止させることが可能です。実際のテストでは、攻撃中は正規の接続試行がすべて失敗し、攻撃停止後はすべて正常に成功しました。
2件目の問題は、AppleのベースフレームワークであるFoundationに存在します。XMLプロパティリストのパーサーが再帰呼び出しの深さ制限を持たないため、約200段階のネスト構造を持つドキュメントでスレッドスタックが枯渇し、フォールトが発生します。この影響範囲は、macOS・iOS・watchOS・tvOS・visionOS上で信頼されていないXMLプロパティリストをデコードするあらゆるAppleアプリに及びます。3件目は、システムのHTTPパーサーにおけるヌルポインタ参照で、不正な形式のlengthヘッダーやchunkヘッダーによって到達可能です。
Quick Shareにおけるバイパスとuse-after-free
Quick Shareの発見事項は、クラッシュにとどまらずプロトコルのロジックにまで踏み込んでいます。1件目は、認証前に接続ステートマシンを攻撃者が先へ進められるというものです。Samsung実装では、本来それ以降の処理を制御するUKEY2鍵交換が行われる前の、接続開始リクエスト直後にアプリケーションフレームがディスパッチされます。秘密鍵が一切交換されていない状態で、3種類のフレームがパースされ応答が返されることが、全テストで再現されました。
2件目のバイパスは、一段階後に存在します。鍵交換が完了しセッション鍵が生成された後も、ハンドシェイク後の7種類のフレームのうち3種類が、平文の暗号化されていないデータとして送信された場合にも処理されます。同じWi-Fi上に存在する中間者攻撃者は、接続を承認済み状態へ誘導し、セッションを維持しながら、攻撃者が指定したアドレスをサーバーへ供給できます。
Windowsクライアントには、このセットで唯一のメモリ破壊バグが存在します。use-after-freeは、同じエンドポイント識別子とnonceを持つ2つの接続が競合し、あるオブジェクトが解放された後に別のスレッドがそれを呼び出す際に発生します。ソースコード内の開発者コメントには、その箇所に「EncryptionRunnerとのレース状態によるバグがあった」と明記されていました。適用された修正は、チェック時に解放済みオブジェクトを読み込むため、同じ穴を再び開ける結果となっています。Googleはこれに対してバウンティを支払いました。研究チームはクラッシュを確認しましたが、実際に動作するエクスプロイトの作成までは踏み込んでいません。
両スタックに共通する根本原因
両システムは設計上異なるアプローチを採用しながらも、類似した弱点に行き着いています。Appleのデーモンはリクエストを単一のロックで直列化するため、レース状態は起きにくい一方で、fatalErrorのような信頼性コードがリスクとして露出します。GoogleとSamsungのエンドポイントマネージャーはマルチスレッドで動作しており、その並行処理がWindowsのレース状態を生み出しました。Samsungのバイパス2件には共通の原因があります。認証と暗号化のチェックが個々のフレームハンドラー内で実施される設計のため、チェックを省略したハンドラーがそのまま抜け穴になるのです。
Ale Ebrahimは、このパターンをこれらのサービスの役割と結びつけて説明しています。「この共通性はAppleやGoogleに固有の問題ではないと思います」と彼は述べています。「むしろ、近接型プロトコルに共通するエンジニアリング上の課題を反映しているのです。これらのサービスはシームレスなユーザー体験を提供するよう設計されており、そのため特権デーモンが認証やユーザー承認の前に、攻撃者がコントロール可能な複雑な入力を処理しなければなりません。これにより必然的に、認証前の攻撃対象領域が広大になります。」
両スタックがほぼコードを共有していないにもかかわらず、類似した弱点に収束したことが彼の目を引きました。「特に興味深かったのは、まったく異なる実装を経て、2つのエコシステムが類似したクラスの脆弱性に辿り着いたことです」と、Ale EbrahimはHelp Net Securityに語っています。彼は各バグをそれぞれの設計上の問題として位置づけています。「AirDropの問題は主にパーサーの堅牢性と、ネットワーク経由で到達可能なfatalアサーションに関するものでした。Quick Shareでより深刻な問題は、セキュリティチェックが一元的にではなく個々のハンドラーで実施されていたこと、およびエンドポイントライフサイクル管理における並行処理の問題から生じていました。」共通点として彼はこう結論付けています。「コードベースは異なっていても、結局は同じアーキテクチャパターン——セキュリティ上重要な不変条件が単一の境界で強制されていなかったこと——に行き着きます。」
将来のプロトコル設計に向けた3つの原則
Ale Ebrahimは、今後の近接型プロトコル設計に向けた3つの原則を提示しています。第一は、セキュリティチェックを一箇所に集約することです。「認証と暗号化は、個々のプロトコルハンドラーに依存するのではなく、ディスパッチャーまたはフレームワークの境界で一度だけ強制すべきです」と彼は述べています。第二は、露出するコードを最小化することです。「認証前に到達可能な特権コードの量は、できる限り最小化すべきです」とAle Ebrahimは語っています。第三は、本研究で用いたようなテスト手法を通常の開発工程に組み込むことです。「プロトコル認識型ファジングとステートマシンテストは、標準的な開発プロセスの一部となるべきです。これらのプロトコルは状態管理が複雑であり、従来のAPIファジングやファイルファジングでは、最もセキュリティ上重要な実行パスをほとんどカバーできないからです」と彼は述べています。
開示状況
2026年6月下旬に論文が完成して以降、一部の状況は変化しています。Ale Ebrahimによれば、AirDropの脆弱性のうち1件はすでに修正され、識別子が割り当てられているとのことです。「Appleから、報告したAirDrop脆弱性の一つがソフトウェアアップデートで修正され、CVE識別子が付与されたと連絡を受けました」と彼は述べています。ただし、セキュリティアドバイザリは現時点では非公開です。「対応するセキュリティアドバイザリとCVEはまだ公開されていないため、現段階では詳細をお伝えできません。残りのAppleへの報告についても、協調的な開示プロセスが進行中であり、公開CVEはまだ割り当てられていません」とAle Ebrahimは説明しています。
Quick Share側でも動きがあります。Samsungへ上流報告された2件のバグは、引き続きGoogleで調査中です。Windowsのuse-after-freeはGoogleのバウンティプログラムを通じて報奨金が支払われ、コードの修正も完了しています。「論文完成後、Googleは影響を受けるWindowsコードベースへの修正を適用しました。ただし、公開CVEの割り当てはまだ保留中です」とAle Ebrahimは述べています。研究チームは、他の研究者が検証できるよう、ファジャー・クラッシュスクリプト・プロトコルメモを公開しています。
翻訳元: https://www.helpnetsecurity.com/2026/06/30/apple-airdrop-google-samsung-quick-share-vulnerabilities/