CVE-2025-31200: Переполнение буфера при переназначении каналов APAC в CoreAudio
Обзор уязвимости
CVE-2025-31200 — это уязвимость переполнения буфера в фреймворке CoreAudio от Apple, затрагивающая декодер Apple Positional Audio Codec (APAC). Ошибка находится в функции APACChannelRemapper::Process внутри APACHOADecoder::DecodeAPACFrame.
Затронутые системы:
iOS < 18.4.1
macOS < 15.4.1
Все устройства Apple с фреймворком CoreAudio
Технические детали
Коренная причина
Уязвимость возникает из-за логической ошибки при проверке расположения каналов:
Массив mRemappingArray имеет размер, основанный на младших 2 байтах mChannelLayoutTag из глобального расположения каналов
Во время обработки аудиокадров декодер использует отдельное количество каналов переназначения для итерации по этому массиву
Создавая несоответствие между этими двумя значениями количества каналов, злоумышленник может вызвать выход за границы памяти
Вектор атаки
Эксплойт работает путем создания вредоносного аудиофайла APAC с:
Глобальное расположение каналов: 4 канала (определяет размер выделяемого массива)
Расположение каналов переназначения: 64 канала (определяет количество итераций)
Результат: 16-кратный выход за границы памяти при переназначении каналов
Доказательство концепции
Этот репозиторий содержит реализацию на Python, которая генерирует вредоносный APAC cookie, эксплуатирующий данную уязвимость.
Файлы
poc.py - Основной генератор эксплойта
generate_audio_simple.py - Генерация аудиофайлов
caf_utils.py - Утилиты для манипуляции APAC cookie
parser.py - Парсинг cookie и создание полезной нагрузки эксплойта
Системные медиаслужбы, автоматически обрабатывающие аудиофайлы
Меры по смягчению
Apple устранила эту уязвимость в:
iOS 18.4.1 (апрель 2025)
macOS 15.4.1 (апрель 2025)
Исправление проверяет количество каналов между глобальным расположением и расположением переназначения перед обработкой, предотвращая несоответствие, вызывающее переполнение буфера.
Отказ от ответственности
Это доказательство концепции предоставлено только в образовательных и исследовательских целях. Оно демонстрирует критическую уязвимость безопасности в фреймворке CoreAudio от Apple, чтобы помочь исследователям безопасности понять механизмы атаки и улучшить защитные меры.