ClamAV 1.5.4 закрывает восемь уязвимостей в обработке архивов и файлов

ClamAV 1.5.4 вышел 7 августа 2026 года как патч безопасности после июльского релиза 1.5.3. Разработчики закрыли восемь CVE в обработчиках ZIP, GPT, PESpin, PDF, Mach-O, XAR и UnRAR, а заодно исправили гонку в clamd, способную раскрывать фрагменты памяти процесса или завершать работу демона. Самая любопытная часть истории проста: антивирус мог сталкиваться с повреждением памяти именно в момент разбора специально сформированного файла, который пришёл на проверку.

ClamAV 1.5.4 закрывает восемь уязвимостей
ClamAV 1.5.4 закрывает восемь уязвимостей

ClamAV 1.5.4 устраняет восемь CVE в самом механизме сканирования

Проект ClamAV опубликовал версию 1.5.4 7 августа. В официальном сообщении ClamAV выпуск назван security patch, а описание релиза в репозитории Cisco Talos перечисляет восемь исправленных CVE и несколько дополнительных дефектов.

Общая черта большей части уязвимостей — обработка входных данных. ClamAV разбирает архивы, исполняемые файлы, образы дисков и документы, чтобы добраться до содержимого. Если структура такого файла намеренно повреждена, ошибка в парсере может возникнуть раньше, чем движок закончит проверку.

УязвимостьКомпонентЧто исправлено
CVE-2026-20337ZIPОшибка учёта ёмкости каталога могла привести к записи за пределами выделенной памяти
CVE-2026-20345GPTИндексирование имён разделов могло читать или записывать данные за границами записи в стеке
CVE-2026-20339PESpin / PEЦелочисленное переполнение могло создать слишком маленький буфер с последующей записью за его пределы
CVE-2026-20338ZIPОшибка владения данными при объединении записей каталога могла вызвать некорректное освобождение памяти
CVE-2026-20346PDFЦелочисленное переполнение вниз при разборе повреждённой hex-строки могло завершить работу сканера
CVE-2026-20347Mach-OПереполнение и неопределённое поведение могли привести к сбою при проверке повреждённого файла
CVE-2026-20348XARОшибка размеров могла запросить чрезмерный объём памяти или выйти за установленные лимиты сканирования
CVE-2025-8088UnRAR в WindowsИсправление блокирует извлечение через NTFS alternate data stream за пределы временного каталога ClamAV

Две ZIP-проблемы, CVE-2026-20337 и CVE-2026-20338, относятся только к ветке 1.5.x: в описании релиза затронутыми указаны версии с 1.5.0 по 1.5.3. Остальные перечисленные ошибки имеют более длинную историю — некоторые присутствовали в ClamAV с веток 0.90 и 0.98.

ZIP и PESpin могли привести к записи за пределами памяти

CVE-2026-20337 связана с каталогом ZIP. При индексировании локальных заголовков ClamAV неправильно отслеживал доступную ёмкость структуры, из-за чего запись могла выйти за границы выделенного в куче блока. Исследователь Kevin Stubbings из GitHub Security Lab обнаружил эту проблему в ветке 1.5.

Вторая ZIP-ошибка, CVE-2026-20338, возникала при объединении записей каталога. Некорректная модель владения указателями могла закончиться invalid free — попыткой освободить память, которой текущий участок кода уже не должен управлять. Для антивирусного движка подобный дефект особенно заметен в автоматических сценариях, где множество файлов поступает на проверку без участия человека.

CVE-2026-20339 затрагивала распаковщик PESpin, применяемый к PE-файлам Windows. Целочисленное переполнение могло заставить движок выделить буфер меньшего размера, чем требовалось для восстановления PE-файла, после чего данные записывались за его пределы. В официальных release notes указано, что эта ошибка существовала начиная с ClamAV 0.90 и устранена одновременно в 1.5.4 и 1.4.6.

PDF, Mach-O, GPT и XAR расширяют поверхность атаки через форматы файлов

Четыре других исправления показывают, насколько разнообразные форматы приходится разбирать антивирусу. CVE-2026-20346 находилась в PDF-парсере: повреждённая шестнадцатеричная строка могла вызвать integer underflow и завершение работы сканера.

CVE-2026-20347 касалась Mach-O — формата исполняемых файлов в экосистеме Apple. Разработчики исправили сочетание неопределённого поведения и целочисленного переполнения, из-за которого повреждённый Mach-O мог привести к сбою.

CVE-2026-20345 затрагивала разбор GPT, таблицы разделов современных дисков. Ошибка индексации при преобразовании имени раздела допускала чтение или запись за пределами записи, размещённой в стеке.

У CVE-2026-20348 другой сценарий: XAR-парсер при распаковке повреждённого оглавления мог запросить чрезмерное выделение памяти либо пересечь лимиты, заданные для сканирования. Эта проблема присутствовала в ClamAV начиная с версии 0.98.1.

UnRAR больше не выводит извлечённые данные за временный каталог ClamAV в Windows

В ClamAV 1.5.4 вошло и исправление CVE-2025-8088 из upstream-проекта UnRAR. Встроенная библиотека теперь отклоняет разделители пути внутри имён NTFS Alternate Data Streams. Ранее такой путь мог привести к извлечению содержимого за пределы временного каталога, который ClamAV использует во время проверки архива в Windows.

Здесь практический эффект отличается от обычного падения парсера. Временная распаковка — часть внутреннего конвейера сканирования: движок извлекает содержимое архива, анализирует его и затем очищает рабочие файлы. Ограничение пути удерживает созданные при распаковке объекты внутри каталога, предназначенного для этого процесса.

По данным release notes, CVE-2025-8088 затрагивала ClamAV с версии 0.101.0 по 1.5.3. Исправление вошло одновременно в 1.5.4 и 1.4.6.

Команда clamd STATS получила защиту от гонки и утечки памяти процесса

Версия 1.5.4 исправляет проблему потокобезопасности в команде STATS демона clamd. При одновременном выполнении сканирования и запросов статистики гонка могла привести к раскрытию содержимого памяти процесса либо к падению демона. Разработчики одновременно поправили обработку частичных записей в сокет при больших ответах STATS.

Этот дефект существовал значительно дольше текущей ветки: официальное описание указывает диапазон от ClamAV 0.95 до 1.5.3. Исправление вошло и в 1.4.6.

Для серверных систем clamd обычно представляет собой постоянно работающий процесс, к которому обращаются другие приложения. Поэтому сбой внутри команды статистики затрагивает сам сервис сканирования, даже когда проверяемый файл уже не является непосредственной причиной проблемы.

FreeBSD, FIPS и Rust-зависимости получили отдельные исправления

На FreeBSD восстановлена безопасная работа операций перемещения и удаления файлов в карантин. Регрессия появилась в ClamAV 1.4.5 и 1.5.3. В 1.4.6 и 1.5.4 разработчики вернули эти операции, сохранив защиту от подмены исходного пути во время выполнения файловой операции.

В ветке 1.5 дополнительно устранена утечка контекста OpenSSL в старых функциях хеширования. Она возникала, если запрошенный алгоритм дайджеста невозможно было получить, например при недоступном default provider в окружении с FIPS. Этой ошибке подвержены ClamAV 1.5.0–1.5.3.

Ещё одна правка пришла через зависимость Rust: crossbeam-epoch обновлён для устранения проблемы RUSTSEC-2026-0204. Этот пункт присутствует и в описании ClamAV 1.4.6.

ClamAV 1.4.6 переносит большую часть исправлений в LTS-ветку

Одновременно с 1.5.4 проект выпустил ClamAV 1.4.6. В официальной матрице поддержки ветка 1.4 обозначена как текущий Long Term Support-релиз, поэтому параллельный патч сохраняет исправления безопасности для систем, которые остаются на LTS.

Набор исправлений у двух выпусков почти совпадает. В 1.4.6 присутствуют CVE-2026-20345, CVE-2026-20339, CVE-2026-20346, CVE-2026-20347, CVE-2026-20348 и CVE-2025-8088, правки clamd STATS, FreeBSD и crossbeam-epoch.

CVE-2026-20337 и CVE-2026-20338 относятся к коду ветки 1.5, поэтому в 1.4.6 их нет. Исправление утечки OpenSSL library context тоже указано только для 1.5.4.

ClamAV 1.5.4 показывает, насколько сложным стал безопасный разбор файлов

За пять недель до этого, 1 июля, ClamAV 1.5.3 уже закрыл отдельную серию уязвимостей в PESpin, Aspack, InstallShield, FSG, ALZ, 7z и DMG. Релиз 1.5.4 продолжает ту же линию и затрагивает ещё восемь CVE, часть которых существовала в кодовой базе много лет.

На 8 августа 2026 года точно известно, что исправленные версии опубликованы для веток 1.5 и 1.4, а готовые сборки ClamAV 1.5.4 размещены для Linux и macOS вместе с исходным кодом и подписями. Открытым остаётся вопрос о том, когда конкретные Linux-дистрибутивы и продукты, встраивающие ClamAV, перенесут этот патч в собственные пакеты и каналы обновления.

При использовании материалов сайта необходимо указывать ссылку на TGLand.ru. Если вы копируете фрагменты текста в интернете, прямая гиперссылка, доступная для индексации поисковыми системами, должна быть размещена в начале материала.

Вам также может понравиться