
IOS オーディオバッファオーバーフロー CVE-2025-31200 POC
CVE-2025-31200 は、Apple の CoreAudio フレームワークにおけるバッファオーバーフローの脆弱性で、Apple Positional Audio Codec (APAC) デコーダに影響を与えます。このバグは APACHOADecoder::DecodeAPACFrame 内の APACChannelRemapper::Process 関数に存在します。
影響を受けるシステム:
この脆弱性は、チャンネルレイアウトの検証における論理エラーに起因します:
mRemappingArray のサイズは、グローバルチャンネルレイアウトの mChannelLayoutTag の下位2バイトに基づいて決定されますこのエクスプロイトは、以下の特徴を持つ悪意のある APAC オーディオファイルを作成することで機能します:
このリポジトリには、この脆弱性を悪用する悪意のある APAC クッキーを生成する Python 実装が含まれています。
poc.py - メインのエクスプロイトジェネレータgenerate_audio_simple.py - オーディオファイル生成caf_utils.py - APAC クッキー操作ユーティリティparser.py - クッキーのパースとエクスプロイトペイロードの作成test_exploit.py - エクスプロイトの検証と分析create_malicious_mp4.py - MP4 ペイロード生成# 悪意のある APAC クッキーを生成
pip install numpy construct
python3 poc.py
# エクスプロイトペイロードを検証
python3 test_exploit.py
# 悪意のある MP4 を作成(macOS の afconvert が必要)
python3 create_malicious_mp4.py
スクリプトが生成するもの:
exploit_cookie.dat - チャンネルカウントの不一致を含む悪意のある APAC クッキーmalicious_apac.m4a - テスト準備完了の武器化された MP4 ファイルpoc.py)test_exploit.py)create_malicious_mp4.py)APACChannelRemapper::Process で範囲外アクセスが発生脆弱なシステムでエクスプロイトを検証するには:
APACChannelRemapper::Process注意深くペイロードを作成することで、この脆弱性は以下の目的に悪用される可能性があります:
コード実行: 範囲外書き込み操作を制御することで、攻撃者は以下を行う可能性があります:
サンドボックス脱出: CoreAudio はさまざまなセキュリティコンテキストで動作するため:
リモート攻撃シナリオ:
Apple はこの脆弱性を以下のバージョンで修正しました:
修正内容は、処理前にグローバルレイアウトとリマッピングレイアウトのチャンネル数を検証し、バッファオーバーフローの原因となる不一致を防止します。

この概念実証は教育および研究目的のみで提供されています。これは Apple の CoreAudio フレームワークにおける重大なセキュリティ脆弱性を示し、セキュリティ研究者が攻撃メカニズムを理解し、防御策を改善するのに役立ちます。