
IOS audio buffer overflow CVE-2025-31200 POC
CVE-2025-31200 是 Apple CoreAudio 框架中的一个缓冲区溢出漏洞,影响 Apple 定位音频编解码器(APAC)解码器。该漏洞存在于 APACHOADecoder::DecodeAPACFrame 中的 APACChannelRemapper::Process 函数。
受影响系统:
该漏洞源于通道布局验证中的逻辑错误:
mRemappingArray 的大小基于全局通道布局中 mChannelLayoutTag 的低 2 字节确定漏洞利用通过构造恶意的 APAC 音频文件实现,包含:
本仓库包含一个 Python 实现,用于生成利用此漏洞的恶意 APAC cookie。
poc.py - 主要漏洞生成器generate_audio_simple.py - 音频文件生成caf_utils.py - APAC cookie 操作工具parser.py - cookie 解析与漏洞载荷生成test_exploit.py - 漏洞验证与分析create_malicious_mp4.py - MP4 载荷生成# 生成恶意 APAC cookie
pip install numpy construct
python3 poc.py
# 验证漏洞载荷
python3 test_exploit.py
# 创建恶意 MP4(需要 macOS 的 afconvert)
python3 create_malicious_mp4.py
脚本生成:
exploit_cookie.dat - 包含通道计数不匹配的恶意 APAC cookiemalicious_apac.m4a - 可用于测试的武器化 MP4 文件poc.py)test_exploit.py)create_malicious_mp4.py)APACChannelRemapper::Process 中发生越界访问在易受攻击的系统上验证漏洞:
APACChannelRemapper::Process 出现 EXC_BAD_ACCESS精心构造载荷后,此漏洞可能被用于:
代码执行:通过控制越界写入操作,攻击者可能:
沙箱逃逸:由于 CoreAudio 运行在多种安全上下文中:
远程攻击场景:
Apple 已在此版本中修复漏洞:
修复方法是在处理前验证全局布局与重映射布局之间的通道计数,阻止导致缓冲区溢出的不匹配。

此概念验证仅用于教育和研究目的。它展示了 Apple CoreAudio 框架中的一个严重安全漏洞,旨在帮助安全研究人员理解攻击机制并改进防御措施。