Автономный ИИ-агент нашел 21 zero-day уязвимость в FFmpeg, часть из которых существовала более 20 лет

FFmpeg

Компания depthfirst, разрабатывающая автономные агенты для анализа безопасности, объявила об обнаружении 21 уязвимости нулевого дня в медиабиблиотеке FFmpeg с помощью собственной системы на базе больших языковых моделей. Восьми из них уже присвоены идентификаторы CVE. По оценке исследователей, некоторые найденные ошибки оставались в коде от 15 до 23 лет. Стоимость полного анализа составила около тысячи долларов, что на порядок меньше, чем у аналогичных проектов Google и Anthropic.

Детали уязвимостей

Специализированный агент depthfirst предназначен не для написания кода, а для поиска эксплуатабельных проблем безопасности в больших кодовых базах без конкретных инструкций. Он начинает с моделирования угроз: изучает архитектуру, определяет парсеры и обработчики протоколов, через которые может поступать атакующий ввод, затем отслеживает поток данных от входа до потенциально уязвимых участков. В отличие от теоретических отчётов, система автоматически генерирует воспроизводимые входные данные (PoC), подтверждающие наличие уязвимости, и проверяет, реально ли атакующий может контролировать нужный ввод, достижим ли уязвимый путь, и воспроизводится ли ошибка.

В результате такого подхода были выявлены 21 уязвимость, охватывающая компоненты от TS-демультиплексора до VP9-декодера. Восемь из них уже получили идентификаторы CVE. Среди них: переполнение кучи в TS-демультиплексоре, присутствовавшее с 2010 года (CVE-2026-39210); целочисленное переполнение в swscale, также 2010 года (CVE-2026-39211); переполнение стека в парсере опций, вызванное регрессией июля 2025 года (CVE-2026-39212); переполнение кучи в yuv4mpegenc, введённое в 2023 году (CVE-2026-39213); переполнение стека в реализации SDT 2003 года, просуществовавшее 23 года (CVE-2026-39214); переполнение кучи в update_mb_info() 2012 года (CVE-2026-39215); ещё одно переполнение кучи в img2enc.c того же года (CVE-2026-39216); а также регрессия в VP9-декодере от марта 2025 года (CVE-2026-39217) и переполнение кучи в DASH-демультиплексоре 2017 года (CVE-2026-39218). Остальные уязвимости уже исправлены, но CVE пока не присвоены; они перечислены во внутренней базе depthfirst под кодами DFVULN-127 и далее.

Особого внимания заслуживает уязвимость DFVULN-127 - переполнение кучи в AV1-распаковщике RTP (libavformat/rtpdec_av1.c). Она эксплуатируется при обычной команде ffmpeg -i rtsp://attacker/stream и не требует специальных флагов. Один вредоносный RTP-пакет размером 183 байта способен перенаправить выполнение кода. Проблема кроется в обработке временных разделителей (Temporal Delimiter, TD) в AV1-битстриме. Согласно спецификации, такие маркеры должны игнорироваться и удаляться. Однако реализация в FFmpeg при пропуске TD сдвигает курсор записи (pktpos) на длину OBU, не выделяя память и не перемещая входной указатель. Это приводит к тому, что следующие данные записываются за пределами выделенного буфера. Разработчики depthfirst подготовили PoC-код, демонстрирующий, как контролируемое переполнение кучи позволяет перезаписать указатель на функцию освобождения в структуре AVBuffer и перехватить управление при освобождении пакета.

FFmpeg - одна из самых распространённых библиотек обработки мультимедиа в мире. Она используется в браузерах, потоковых платформах, системах видеонаблюдения и транскодирования. Поскольку библиотека регулярно разбирает сложные и потенциально вредоносные медиафайлы, она является привлекательной целью для zero-click-атак. Недавние исследования Google Big Sleep и Anthropic Mythos уже выявили десятки уязвимостей, но работа depthfirst показала, что полностью автоматизированный поиск с современными моделями может находить ошибки, которые десятилетиями не замечали при ручных аудитах и фаззинге.

В компании depthfirst отметили, что их агент не только обнаруживает уязвимости, но и доказывает их эксплуатабельность, создавая конкретные входные данные. Это позволяет разработчикам FFmpeg оперативно выпускать патчи. Все найденные проблемы уже устранены в последней версии библиотеки. Пользователям рекомендуется обновить FFmpeg до актуального релиза, особенно если в их инфраструктуре обрабатываются RTSP-потоки из ненадёжных источников.

Снижение стоимости глубокого анализа безопасности с десяти тысяч долларов до одной тысячи благодаря автоматизации на базе ИИ меняет подход к поиску уязвимостей. Системы, способные самостоятельно моделировать угрозы, отслеживать потоки данных и генерировать воспроизводимые тесты, становятся серьёзным инструментом как для исследователей, так и для злоумышленников. Продолжающееся совершенствование таких агентов, вероятно, приведёт к тому, что в legacy-коде, подобном FFmpeg, будут находить ещё больше давно лежащих ошибок.

Ссылки

Комментарии: 0