macOS Sequoiaの脆弱性により、パスワードを含むキーチェーンデータが漏洩する恐れ

macOS Sequoiaの脆弱性により、パスワードを含むキーチェーンデータが漏洩する恐れ

新たに発見されたmacOSの脆弱性により、攻撃者はパスワードなしでキーチェーンデータを復号できる可能性がありました。パッチ適用前の仕組みをご紹介します。

Appleはセキュリティとプライバシーを重視していることで知られています。しかし、macOS Sequoia 15.0に脆弱性があり、攻撃者がこれらの保護を回避できる可能性があります。

Nullcon Berlin 2025において、FFRI Securityのセキュリティ研究者Koh M. Nakagawa氏がこの問題を公表しました。彼は、Appleのgcoreデバッグユーティリティにシステムレベルの権限が付与され、重要なセキュリティ境界が侵害されていることを発見しました。

現在CVE-2025-24204として追跡されているこの脆弱性により、システム整合性保護(SIP)が有効になっている場合でも、アクセス権を持つ誰でも任意のプロセスからメモリを読み取ることができました。この脆弱性により、キーチェーンの暗号化キーが漏洩し、透明性、同意、および制御(TCC)の制限が回避されました。

この脆弱性により、攻撃者はApple Silicon搭載Mac上で実行されているiOSアプリを復号することも可能になりました。この脆弱性は、Appleの最も重要なセキュリティ防御のいくつかを根本的に弱体化させました。

幸いなことに、gcoreの脆弱性は物理的なアクセスを必要とせず、Mac上でローカルにコードを実行する機能のみを必要としました。研究者によると、Appleがパッチを当てるまでは、この脆弱性が悪用された事例は確認されていませんでした。

欠陥が発見された経緯

中川氏によると、このバグはほとんど偶然発見されたとのことだ。マイクロソフトがProcDump-for-Macをリリースした際、SIPが保護されたプロセスでは動作しないだろうと考えたという。

OS Xキーチェーンのセキュリティ脆弱性に関するスライドを提示している人。スライドにはターミナルコマンドとマスターキーの検索に関する説明が含まれています。左下隅にHelp Net Securityのロゴが表示されています。

Nullcon Berlin 2025で講演するKoh M. Nakagawa氏。画像提供:Help Net Security

しかしテスト中に、ProcDumpは機密性の高いシステムプロセスを含むほぼすべてのメモリをダンプできることに気づいた。その秘密は、com.apple.system-task-ports.read権限を付与されていたgcoreにあった。

攻撃者ができること

この権限により、gcore はメモリに無制限にアクセスできるようになりました。おそらくマイクロソフトもこれに気付いていたのでしょう。だからこそ ProcDump は動作したのです。しかし、点と点を結びつけ、セキュリティ上の悪夢を予見したのは中川氏でした。「本当にショックでした」と彼は言います。

中川氏はsecuritydプロセスのメモリをダンプすることで、ログインキーチェーンの暗号化に使用されたマスターキーを復元することができました。このマスターキーを使用することで、ユーザーのパスワードを使わずにキーチェーン全体を復号することができました。

鮮やかなグラデーションのスクリーンを備えたスタイリッシュなラップトップが青い布張りのソファの上に置かれ、アプリケーション アイコンが表示されたドックが表示されています。

AppleはmacOS 15.3で問題のある権限を削除した

中川氏はまた、攻撃者がAppleのTCC(写真や連絡先などのファイルへのアクセスを許可するアプリを制御するシステム)を回避できることを示しました。サンドボックス化されたアプリはファイルをメモリに読み込むため、攻撃者はメモリをダンプし、Appleのvmmapツールを使用して保護されたドキュメントを再構築できます。

Apple Silicon Macは、保存時にバイナリが暗号化されたiPhoneおよびiPadアプリを実行できるため、iOSアプリでさえ脆弱でした。中川氏はgcoreを使用することで、アプリの実行中に復号されたバイナリを復元することができました。これは通常、ジェイルブレイクされたiPhoneが必要となるアクセスです。

アップルの対応

Appleは、2025年初頭にリリースされたmacOS 15.3で、問題のある権限を削除しました。同社はこれについて派手なプレスリリースを出していませんが、これは珍しいことではありません。セキュリティ修正は、変更履歴の中に埋もれ、詳細がほとんど記載されていないことがよくあります。

検出はAppleのエンドポイントセキュリティフレームワークを通じて可能であり、このフレームワークは疑わしいtask_read_for_pid呼び出しを監視できます。しかし、中川氏は、防御側がこのような問題をリアルタイムで検出できるかどうかについては楽観視していません。たとえ企業がこの権限付与に気付いたとしても、唯一の現実的な解決策はAppleのアップデートを待つことだけだとしています。

安全を保つ方法

macOS Sequoiaをご利用の場合は、Appleが脆弱性を削除したバージョン15.3以降に直ちにアップデートしてください。古いバージョンは依然として脆弱性が残っており、アップグレード以外に回避策はありません。

リスクの高いビルドを使い続けることを避けるため、自動アップデートを有効にすることも重要です。Macを最新リリースに保つことが、パッチ未適用の脆弱性を回避する最も簡単な方法です。

セキュリティをさらに強化するには、Appleのキーチェーンとは別のパスワードマネージャーの使用を検討してください。そうすれば、最も機密性の高い認証情報がすべて一つの場所に保管されることはありません。macOSのあらゆるバグから保護できるわけではありませんが、攻撃者が突破しなければならない層が一つ増えます。

最後に、Appleのサポートサイトに掲載されているセキュリティアドバイザリに注意してください。詳細な情報は少ないことが多いですが、何がいつ修正されたかを示す唯一の公式記録です。