Удалённая уязвимость в IPv6-стеке OpenBSD

Автор Сообщение
news_bot ®

Стаж: 6 лет 2 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
25-Мар-2022 17:30

В фоновом процессе slaacd, отвечающем в OpenBSD за автоконфигурацию адресов IPv6 (IPv6 Stateless Address Autoconfiguration, RFC 4862), выявлена уязвимость, приводящая к переполнению буфера при получении специально оформленного анонса маршрутизатора IPv6 (RA, Router Advertisement).
Изначально функциональность автонастройки адресов IPv6 была реализована на уровне ядра, но начиная с OpenBSD 6.2 была вынесена в отдельный непривилегированный процесс slaacd. Указанный процесс отвечает за отправку сообщений RS (Router Solicitation) и разбора ответов RA (Router Advertisement) с информацией о маршрутизаторе и параметрах сетевого подключения.
В феврале в slaacd была исправлена ошибка, приводящая к аварийному завершению в случае указания 7 серверов в списке RDNSS (Recursive DNS Servers). Подобная оплошность привлекла внимание независимых исследователей, которые попытались изучить код slaacd на предмет других ошибок, возникающих при разборе полей в сообщениях RA. Анализ показал, что в коде имеется ещё одна проблема, проявляющаяся при обработке поля DNSSL (DNS Search List), включающего списков доменных имён и шаблонов хостов для DNS.
Каждое имя в списке DNSSL кодируется с использованием разделителя с нулевым кодом и промежуточных однобайтовых меток, определяющих размер следом идущих данных. Уязвимость вызвана тем, что в коде разбора списка поле с размером копируется в переменную со знаковым типом integer ("len = data[pos]"). Соответственно, в случае указания в поле значения с выставленным старшим битом, это значение будет воспринято в условном операторе как отрицательное число и проверка на максимальный допустимый размер ("if (len > 63 || len + pos + 1 > datalen) {") не сработает, что приведёт к выполнению вызова memcpy с параметром, размер копируемых данных при котором превышает размер буфера.

===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_slaacd, #_ipv6, #_openbsd
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 16-Апр 21:21
Часовой пояс: UTC + 5