CVE: CVE-2026-80600
Продукт: Linux Kernel
Дата публикации: 28.08.2026
Критичность: CRITICAL
CVSS: 9.8 (3.1)
EPSS: 0,51%; процентиль 41,02%
CISA KEV: нет подтверждения в каталоге CISA KEV
Краткое описание
В модуле batman-adv ядра Linux обнаружена уязвимость use-after-free. Ошибка возникает при обработке DHCPACK-пакетов в функции
batadv_dat_snoop_incoming_dhcp_ack.Из-за неправильного порядка операций указатель на данные пакета становится недействительным после перераспределения буфера. Это может привести к падению ядра или выполнению кода.
Основные характеристики
Риск связан с нарушением целостности памяти в сетевом стеке ядра при обработке пакетов в mesh-среде. Успешная эксплуатация может привести к полному контролю над системой.
- CVSS 3.1: 9.8 (CRITICAL). Вектор:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. Означает удаленный доступ без аутентификации.
- EPSS: 0,51% (процентиль 41,02%). Вероятность эксплуатации в ближайшие 30 дней оценивается как низкая.
- CISA KEV: Не подтверждено наличием в каталоге Known Exploited Vulnerabilities.
- Статус: Received. Официальные данные о публичных эксплойтах отсутствуют.
Какие продукты и версии затронуты
Затронуты версии ядра Linux, содержащие модуль batman-adv и не включающие исправление из коммита
48067b2ae4504500a7093d9e1e16b42e70330480. Точные номера версий дистрибутивов не указаны в предоставленных источниках.Рекомендуется проверить наличие патча в вашем конкретном выпуске.
Причина уязвимости
Ошибка находится в функции
batadv_dat_snoop_incoming_dhcp_ack. Код извлекает указатель hw_src на MAC-адрес из заголовка Ethernet до вызова batadv_dat_get_vid.Внутри
batadv_dat_get_vid вызывается pskb_may_pull, который может перераспределить буфер skb. В результате ранее полученный указатель hw_src начинает указывать на освобожденную память. Использование этого указателя после перераспределения приводит к ошибке use-after-free.Как работает атака
Атакующий направляет на систему, работающую с batman-adv, специально сформированный DHCPACK-пакет. Ядро обрабатывает пакет в контексте ядра.
При попытке извлечь данные из перемещенного буфера происходит обращение к невалидной памяти. Это может вызвать сбой ядра (kernel panic) или, при удачном стечении обстоятельств, позволить атакующему контролировать выполнение кода в пространстве ядра.
Условия успешной эксплуатации
Для успешной атаки необходимо, чтобы на целевой системе был загружен и активен модуль batman-adv. Атакующий должен иметь сетевой доступ к интерфейсу, на котором работает batman-adv.
Требуется возможность отправлять DHCPACK-пакеты, которые будут обработаны функцией
batadv_dat_snoop_incoming_dhcp_ack. Удаленный доступ без аутентификации подтверждается вектором CVSS.Возможный сценарий атаки
Сценарий начинается с отправки DHCPACK-пакета на mesh-интерфейс. Ядро принимает пакет и передает его в обработчик batman-adv. Функция
batadv_dat_snoop_incoming_dhcp_ack начинает анализ.Извлекается указатель на MAC-адрес. Далее вызывается
batadv_dat_get_vid, который может переместить данные пакета. После возврата из функции код использует старый указатель. Происходит обращение к освобожденной памяти, что приводит к нестабильности системы или выполнению вредоносного кода.Есть ли публичный эксплойт
В предоставленных источниках нет информации о публичных эксплойтах или подтвержденной эксплуатации в реальных атаках. Описан только технический сценарий и патч.
Отсутствие сведений о PoC не означает, что эксплойт не существует, но подтвержденных данных о его доступности в открытом доступе на момент публикации нет.
Признаки эксплуатации
Специфичных индикаторов компрометации (IOC) для этой уязвимости в источниках не приведено. Общие признаки могут включать внезапные падения ядра (kernel panic) или сообщения об ошибках памяти (memory corruption) в логах, совпадающие по времени с активностью в mesh-сети.
Эти признаки неспецифичны и требуют дополнительной проверки.
Как обнаружить атаку
Для обнаружения атаки или последствий уязвимости рекомендуется анализировать логи ядра. Ищите сообщения об ошибках use-after-free, kernel panic или срабатывания KASAN (Kernel Address Sanitizer), если он включен.
Также полезно мониторить сетевой трафик на предмет аномального количества DHCPACK-пакетов, направленных на интерфейсы batman-adv. Специфичных сигнатур для IDS/IPS в источниках нет.
Как проверить свою версию
Проверить текущую версию ядра можно следующими командами:
Bash:
uname -r
uname -a
cat /proc/version
Для проверки наличия конкретного патча в исходниках ядра можно использовать
git log или сравнить хэш коммита с известным исправлением 48067b2ae4504500a7093d9e1e16b42e70330480. В бинарных дистрибутивах используйте средства управления пакетами для проверки обновлений.Исправление
Единственным подтвержденным способом устранения уязвимости является установка обновленного ядра, содержащего коммит
48067b2ae4504500a7093d9e1e16b42e70330480. Патч меняет порядок операций: сначала вызывается batadv_dat_get_vid, а затем извлекается указатель на MAC-адрес.Это гарантирует, что указатель будет получен после возможного перераспределения буфера. Обновите ядро через официальные каналы вашего дистрибутива.
Временные меры защиты
Если немедленное обновление ядра невозможно, можно временно отключить модуль batman-adv, если это допустимо для вашей инфраструктуры. Команда
modprobe -r batman-adv выгрузит модуль.Также можно ограничить сетевой доступ к интерфейсам, использующим batman-adv, с помощью файрвола, блокируя входящие DHCPACK-пакеты. Эти меры снижают поверхность атаки, но не устраняют саму уязвимость в коде.
Как проверить устранение уязвимости
После обновления ядра убедитесь, что новая версия загружена и работает. Проверьте версию с помощью
uname -r. Убедитесь, что модуль batman-adv, если он используется, загружен из обновленного ядра.Для подтверждения наличия патча в исходниках можно проверить наличие изменений в файле
net/batman-adv/distributed-arp-table.c. Тестирование в изолированной среде с включенным KASAN поможет убедиться в отсутствии ошибок use-after-free.Вывод
CVE-2026-80600 — серьезная уязвимость в модуле batman-adv, требующая оперативного устранения. Из-за высокого CVSS-скора и возможности удаленной эксплуатации без аутентификации, системы с активным batman-adv находятся под угрозой.
Рекомендуется немедленно обновить ядро до версии, содержащей исправление, или временно отключить модуль, если обновление невозможно. Регулярный мониторинг логов ядра поможет выявить попытки эксплуатации.
Официальные источники
- NVD — CVE-2026-80600
- FIRST EPSS — CVE-2026-80600
- batman-adv: dat: acquire ARP hw source only after skb realloc - kernel/git/stable/linux.git - Linux kernel stable tree
- batman-adv: dat: acquire ARP hw source only after skb realloc - kernel/git/stable/linux.git - Linux kernel stable tree
- batman-adv: dat: acquire ARP hw source only after skb realloc - kernel/git/stable/linux.git - Linux kernel stable tree
- batman-adv: dat: acquire ARP hw source only after skb realloc - kernel/git/stable/linux.git - Linux kernel stable tree
- batman-adv: dat: acquire ARP hw source only after skb realloc - kernel/git/stable/linux.git - Linux kernel stable tree
- batman-adv: dat: acquire ARP hw source only after skb realloc - kernel/git/stable/linux.git - Linux kernel stable tree
- batman-adv: dat: acquire ARP hw source only after skb realloc - kernel/git/stable/linux.git - Linux kernel stable tree
- batman-adv: dat: acquire ARP hw source only after skb realloc - kernel/git/stable/linux.git - Linux kernel stable tree
История обновлений статьи
- 30.08.2026 — Опубликована первая версия материала.
