CVE-2026-45844 in LinuxИнформация

Сводка

по VulDB • 27.05.2026

В ядре Linux устранена следующая уязвимость:

netfilter: arp_tables: исправлено разделение полезной нагрузки ARP для IEEE1394

Вэймин Шэ (Weiming Shi) сообщает:

«Функция arp_packet_match() безоговорочно разбирает полезную нагрузку ARP, предполагая наличие двух аппаратных адресов (источника и назначения). Однако в ARP для IPv4-over-IEEE1394 (RFC 2734) поле аппаратного адреса назначения отсутствует, и функция arp_hdr_len() уже учитывает это, возвращая меньшую длину для устройств ARPHRD_IEEE1394.

В результате на интерфейсах IEEE1394 arp_packet_match() пропускает несуществующий аппаратный адрес назначения и считывает неверные байты как для сравнения адреса целевого устройства, так и для адреса целевого IP-адреса. Это приводит к тому, что правила arptables сопоставляются с мусорными данными, что вызывает неверные решения о фильтрации: пакеты, которые должны быть приняты, могут отбрасываться, и наоборот.

Стек ARP в net/ipv4/arp.c (функции arp_create и arp_process) уже корректно обрабатывает эту ситуацию, пропуская аппаратный адрес назначения для ARPHRD_IEEE1394. Применить тот же подход к arp_packet_match().»

Измените исходный патч так, чтобы он всегда возвращал 0 (отсутствие совпадения), если пользователь пытается сопоставить аппаратный адрес назначения, который никогда не присутствует в IEEE1394.

Обратите внимание, что это возвращает 0 (отсутствие совпадения) как для обычного, так и для инверсного сопоставления, поскольку сопоставление по аппаратному адресу назначения в ARPHRD_IEEE1394 никогда не поддерживалось arptables. Это намеренное поведение: сопоставление по аппаратному адресу назначения никогда не должно оцениваться как истинное для ARPHRD_IEEE1394.

Кроме того, скорректируйте arpt_mangle, чтобы он также отбрасывал пакет, как предлагает AI:

В arpt_mangle логика предполагает стандартную структуру ARP. Поскольку IEEE1394 (FireWire) не содержит аппаратного адреса назначения, линейная арифметика указателей неверно вычисляет смещение для целевого IP-адреса. Это приводит к тому, что операции изменения данных (mangling) записывают в неверное место, вызывая повреждение пакетов. Для обеспечения безопасности этот патч отбрасывает пакеты (NF_DROP), когда для этих полей на устройствах IEEE1394 запрошено изменение данных, поскольку текущая реализация не может корректно сопоставить полезную нагрузку ARP FireWire.

Это исключает изменение как аппаратного адреса назначения, так и адреса IP-адреса. Даже если изменение адреса IP-адреса возможно в IEEE1394, это потребовало бы корректировки вычисления смещения в arpt_mangle, что никогда не поддерживалось.

Основано на патче от Вэймина Шэ (Weiming Shi).

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Ответственный

Linux

Резервировать

13.05.2026

Раскрытие

27.05.2026

Модерация

принято

Вход

VDB-366047

EPSS

0.00037

KEV

Нет

Деятельности

Очень низкий

Источники

Do you need the next level of professionalism?

Upgrade your account now!