Odebrany

CVE-2026-98541

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

W jądrze Linuksa usunięto następującą lukę:

fou: odrzuć pominięty FOU_ATTR_IPPROTO w FOU_ENCAP_DIRECT

Dodano polecenie 7a9bc9e3f423 („fou: Nie zezwalaj na 0 dla FOU_ATTR_IPPROTO.”)
NLA_POLICY_MIN(NLA_U8, 1) do fou_nl_policy[FOU_ATTR_IPPROTO], który
odrzuca jawnie dostarczony atrybut FOU_ATTR_IPPROTO == 0
-ERANGE.

Jednakże FOU_ATTR_IPPROTO jest opcjonalnym atrybutem łącza sieciowego. Kiedy użytkownik
wysyła FOU_CMD_ADD z FOU_ATTR_TYPE ustawionym na FOU_ENCAP_DIRECT i pomija
FOU_ATTR_IPPROTO całkowicie, sprawdzanie poprawności nla_policy kończy się pomyślnie i
parse_nl_config() pozostawia cfg->protocol jako 0 (z memset(cfg, 0,
rozmiar(*cfg))). fou_create() następnie tworzy gniazdo FOU_ENCAP_DIRECT za pomocą
fou->protokół == 0.

W fou_udp_recv(), zwracając protokół -fou-> do udp_queue_rcv_one_skb()
wyzwala ponowne przesłanie protokołu IP, gdy fou->protocol > 0, natomiast
zwracanie 0 informuje warstwę tunelu UDP, bez której skb został zużyty
uwalniając to. Gdy fou->protocol == 0, każdy pakiet odebrany na gnieździe
zwraca 0 z fou_udp_recv() i ujawnia sk_buff.

Odrzuć FOU_ENCAP_DIRECT, gdy !cfg->protocol w fou_create() tak, aby
utworzenie bezpośredniego portu enkapsulacji bez FOU_ATTR_IPPROTO kończy się niepowodzeniem
-EINVAL podczas opuszczania FOU_CMD_DEL i FOU_CMD_GET (które dzielą
parse_nl_config()) bez zmian.

Testowano w QEMU w porównaniu z Linuksem 7.3.0-rc3, wysyłając FOU_CMD_ADD Generic
Żądanie łącza sieciowego z FOU_ATTR_PORT = 5555 i FOU_ATTR_TYPE =
FOU_ENCAP_DIRECT z pominięciem FOU_ATTR_IPPROTO. W nienaprawionym jądrze
FOU_CMD_ADD powiodło się (err = 0), FOU_CMD_GET zgłasza fou->type = 1 i
fou->protocol = 0 i wysłanie 4000 pakietów UDP do wycieków 127.0.0.1:5555
wszystkie 4000 sk_buffów (SUnreclaim w /proc/meminfo rośnie z 41456 kB do
59008 kB, +17552 kB); po zastosowaniu tej poprawki FOU_CMD_ADD jest odrzucane
z -EINVAL (-22).

>_ Referencje

Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.

This product uses the NVD API but is not endorsed or certified by the NVD.

Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.

CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.

NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org