OpenBSD 8.0 вышла 20 октября 2026 года. В релиз вошли исправления уязвимостей в пакетном фильтре PF, сетевых демонах и библиотеках. Отдельно проект опубликовал errata - патчи, которые выходят после сборки релиза. Самый заметный из них закрывает переполнение кучи в ядре при работе IPsec с режимом AES-GMAC, причём затрагивает он только amd64 с аппаратным ускорением AES и Octeon с криптографическим сопроцессором.
Исправления в PF, httpd, relayd и библиотеке libexpat
Переполнение кучи срабатывает при обработке пакетов, защищённых IPsec в режиме AES-GMAC: ядро записывает данные за пределами выделенного блока памяти. Запустить ошибку можно удалённо, доступ к консоли не нужен. Оценку CVSS проект не приводит и словесного уровня опасности не называет, в описании errata остаются условия возникновения и перечень платформ. Требуется ли атакующему действующая учётная запись или участие пользователя, источник не уточняет; эти детали можно найти в описании самого патча.
Сведений об эксплуатации в реальных атаках в материалах выпуска нет. Публикация errata означает, что патч доступен и технические детали раскрыты, а не то, что ошибку уже используют.
Фильтр пакетов PF и движок BPF
В PF закрыт ряд ошибок разбора. Специально собранный пакет сброса TCP больше не разрывает состояние уже установленного соединения. Гонки в счётчиках соединений больше не приводят к отрицательным значениям. На пути исходящих пакетов исправлено разыменование нулевого указателя, а в копировании правил - чтение за границами буфера.
Фильтр перестал принимать незавершённые строки через ioctl (системный вызов для настройки устройств). В запросе списка интерфейсов устранена ошибка на единицу. Неудачное подключение таблицы больше не освобождает набор правил вызывающей стороны. Сборка фрагментов теперь идёт в правильном домене маршрутизации для IPv4 и IPv6.
В движке BPF (Berkeley Packet Filter, механизм фильтрации на сетевом интерфейсе) появились проверки границ программы, связанные с CVE-2026-31912. Дополнительная проверка блокирует необработанные инструкции. Вместе с прежними правками это закрывает переполнение целых чисел, которое могло привести к чтению за границами буфера.
Сетевые демоны и разбор протоколов
Встроенный веб-сервер httpd отклоняет запросы с противоречивой длиной тела: комбинацию заголовков Content-Length и Transfer-Encoding разные парсеры понимают по-разному. Он же отбрасывает устаревшие сложенные заголовки. Прокси relayd отклоняет повторяющиеся Content-Length и удаляет этот заголовок из сообщений, переданных блоками. Оба демона перевели профиль шифров TLS по умолчанию с compat на secure.
Демон согласования ключей iked отклоняет искажённые сообщения IKEv2 и сообщения не в том состоянии. DHCP-сервер больше не падает от подставных адресов в запросе и ограничивает расход памяти на запросы DHCPINFORM. Почтовый демон smtpd усилил разделение привилегий, проверяет размеры зашифрованных буферов очереди, отклоняет небезопасные имена пользователей и символы возврата каретки и перевода строки.
Библиотеки, утилиты и виртуализация
Библиотека разбора XML libexpat обновлена до версии 2.8.4; исправления закрывают CVE-2026-66046 и другие ошибки разбора. В Perl устранены целочисленные переполнения в Storable, pack и unpack и исправлены неверные совпадения регулярных выражений. Модуль Socket обновлён до 2.041, где закрыто чтение за границами кучи. Гипервизор vmd больше не читает память за границами буфера при разборе искажённых ELF-файлов в 32- и 64-битном загрузчике. Архиватор pax перестал извлекать файлы за пределы рабочего каталога.
Патчи errata и порядок обновления
Кроме переполнения в IPsec, в errata вошли исправление использования памяти после освобождения в драйвере видео, порча памяти ядра и очередные уязвимости в NSD (сервер авторитетных ответов DNS). Номера версий исправлений в уведомлении не названы: патчи выпускаются отдельно от релиза и перечислены на странице errata. На amd64, i386 и arm64 бинарные обновления ставит syspatch, на остальных архитектурах патчи обычно собирают из исходников.
Релиз и последующие errata - разные наборы исправлений. После установки 8.0 нужно просмотреть список errata и поставить патчи для своей платформы, иначе часть ошибок останется открытой.
Значимость выпуска связана с удалённым запуском ошибки в IPsec и с правками сетевых служб. Переполнение в IPsec работает на уровне ядра, поэтому на amd64 с AES-NI и на Octeon его закрывают в первую очередь. Остальные изменения сокращают поверхность атаки на демоны, которые, как правило, доступны из сети.