a year ago
- Apple patched a memory corruption bug in CoreAudio (CVE-2025-31200) that was actively exploited in the wild.
- The bug involved a mismatch between the size of a remapping array (m_RemappingArray) and the actual audio channel layout, leading to out-of-bounds memory access.
- The vulnerability was discovered through binary diffing between patched and unpatched versions of the AudioCodecs binary.
- The issue stemmed from improper validation in the apac::hoa::CodecConfig::Deserialize method, where the m_RemappingArray was sized based on m_ChannelLayoutTag instead of m_TotalComponents.
- Exploiting this bug required crafting a malicious APAC (Apple Positional Audio Codec) audio file that triggered the mismatch during deserialization.
- The exploit primitive allowed for out-of-bounds reads and writes in the APACChannelRemapper::Process function, which could potentially lead to arbitrary code execution.
- The bug was particularly interesting as it involved Apple's Higher Order Ambisonics (HOA) audio processing pipeline, a niche but powerful audio spatialization technology.
- While the initial discovery showed crash potential, turning this into a full exploit would require deeper understanding of Apple's audio processing pipeline and heap layout manipulation.
- The vulnerability was part of an exploit chain that also involved a bug in RPAC (another Apple audio component), though details of that chain weren't fully disclosed.
- This case highlights the complexity of audio processing vulnerabilities and the challenges in analyzing them without deep domain knowledge.