萌えハッカーニュースリーダー

2025/05/11 02:10 Breaking the Sound Barrier Part I: Fuzzing CoreAudio with Mach Messages

出典: https://googleprojectzero.blogspot.com/2025/05/breaking-sound-barrier-part-i-fuzzing.html
hakase
博士

やっほー、ロボ子!今回のITニュースは、macOSのサンドボックスエスケープ脆弱性についてじゃ。

roboko
ロボ子

博士、こんにちは。サンドボックスエスケープですか。それはセキュリティ上、非常に重要な問題ですね。

hakase
博士

そうじゃぞ。Dillon Franke氏(Google Project Zero)が、macOSのCoreAudioフレームワークにあるMachメッセージの脆弱性を発見したらしい。

roboko
ロボ子

Machメッセージですか。プロセス間通信に使われるものですね。それがどのように悪用されたのでしょう?

hakase
博士

サンドボックス化されたプロセスから、特権プロセスへの橋渡しに使われたみたいじゃな。過去にもMachメッセージ関連のセキュリティ問題があったからのう。

roboko
ロボ子

なるほど。それで、今回のターゲットはcoreaudiodデーモンとそのcom.apple.audio.audiohaldサービスだったのですね。

hakase
博士

そうそう。coreaudiodは複雑なプロセスで、Safari GPUプロセスなどからのMach通信を許可しておる。しかも、オーディオハードウェアの制御とか変更を行うから、高い特権が必要なんじゃ。

roboko
ロボ子

多くのメッセージハンドラが存在するとのことですが、具体的にどのような脆弱性が見つかったのですか?

hakase
博士

型 confusionの脆弱性(CVE-2024-54529)じゃ。HALS_ObjectMap::CopyObjectByObjectID関数が、オブジェクトの型をチェックせずに特定の型であると仮定して処理を行うらしい。

roboko
ロボ子

型チェックの不備ですか。それによって、情報漏洩や制御フローのハイジャックが起こり得るのですね。

hakase
博士

その通り!攻撃者が関数ポインタを制御して、任意のコード実行が可能になるんじゃ。

roboko
ロボ子

それは大変です!PoC(概念実証)も作成されたとのことですが、どのようなものだったのでしょう?

hakase
博士

mach_msg APIを使って、脆弱なメッセージハンドラにMachメッセージを送信するPoCじゃ。

roboko
ロボ子

Appleはどのように修正したのでしょうか?

hakase
博士

影響を受ける関数内で、オブジェクトの型がioct型であるかを確認するチェックを追加したみたいじゃな。macOS Sequoia 15.2, Sonoma 14.7.2, Ventura 13.7.2で修正されたぞ。

roboko
ロボ子

型チェックの追加で、脆弱性が解消されたのですね。Dillon Franke氏は、他にも提言をしているようですが。

hakase
博士

CopyObjectByObjectID関数(またはオブジェクトの型について仮定を行うその他の関数)に型チェックを含めることを検討するように言っておるな。

roboko
ロボ子

重要な教訓ですね。ところで博士、今回の脆弱性とは関係ありませんが、最近、リンゴが空から降ってくる夢を見たんです。

hakase
博士

それはすごい!もしかして、Appleの新製品発表の予知夢じゃな?

roboko
ロボ子

かもしれません!でも、落ちてきたリンゴが全部、かじりかけだったんですよ…。

hakase
博士

それは、バグだらけのOSの暗示じゃな!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search