Odebrany

CVE-2026-81003

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ę:

net/iucv: filtruj ramki w afiucv_hs_rcv() według urządzenia wejściowego

afiucv_hs_rcv() wybiera gniazdo z iucv_sk_list, dopasowując cztery 8-bajtowe
pola nazw w samym nagłówku transportu. Nie przeprowadza się żadnej kontroli w stosunku do
net_device, na którym przybyła ramka.

Może to spowodować, że ramka przychodząca na dowolnym Netdevie zostanie dostarczona do AF_IUCV
gniazdo. Następują trzy problemy.

Po pierwsze, ramka docierająca przez HiperSockets może zostać dostarczona do gniazda
powiązany z klasycznym transportem IUCV z/VM, który ma iucv->hs_dev == NULL.
iucv_sock_bind() przyjmuje klasyczną ścieżkę za każdym razem, gdy żądany jest identyfikator użytkownika
pasuje do iucv_userid, nawet na gościu, który ma również urządzenie HiperSockets
noszących ten sam identyfikator. Gniazdo podrzędne utworzone przez
afiucv_hs_callback_syn() dla takiego dopasowania dziedziczy hs_dev = NULL i
transport = AF_IUCV_TRANS_HIPER, więc pierwsza funkcja send() zwraca -ENODEV.
Gniazdo dostarczone do Accept() jest bezużyteczne.

Po drugie, ramka przychodząca na jednego netdeva może zostać dostarczona do gniazda
do innego urządzenia IQD. Do czego może prowadzić
- Wyczerpanie kolejki akceptacji (DoS)
- Tożsamość równorzędna kontrolowana przez atakującego w gnieździe podrzędnym
- Wstrzykiwanie danych do istniejących gniazd
- Szum tkaniny w tkaninie IQD, do której wysyłane są fałszywe odpowiedzi
- zabijanie nawiązanych połączeń

Po trzecie, wszystkie gniazda AF_IUCV znajdują się w init_net, ponieważ wywołania iucv_sock_alloc()
sk_alloc(&init_net, ...). Ale nawet ramki pojawiające się na urządzeniach Netdev w formacie
przestrzeni nazw można dostarczyć do gniazda IUCV. Zatem proces w
nieuprzywilejowana przestrzeń nazw użytkowników i sieci zawierająca tylko CAP_NET_RAW
funkcja ważna w tej przestrzeni nazw może wysłać surową ramkę ETH_P_AF_IUCV
na swoim własnym urządzeniu lo i dopasować je do gniazd init_net.

Napraw wszystkie trzy, pomijając dowolne gniazdo, którego hs_dev nie pasuje do
urządzenie wejściowe. Klasyczne gniazdo IUCV z/VM ma wartość hs_dev == NULL; wejście
dev nigdy nie ma wartości NULL, więc klasyczne gniazda są automatycznie pomijane. Niezwiązany
Gniazdo HIPER ma również hs_dev == NULL i jest pomijane. Związane gniazdo HIPER
jest osiągalny tylko z dokładnie tego urządzenia IQD, z którym był powiązany. Ponieważ hs_dev
jest zawsze urządzeniem w skanach init_net (iucv_sock_bind().
for_each_netdev_rcu(&init_net, ...) wyłącznie), ramka, której ingres
urządzenie należy do innej przestrzeni nazw, nigdy nie pasuje do żadnego gniazda.

Należy pamiętać, że AF_IUCV przez HiperSockets nie zapewnia pojedynczego połączenia
uwierzytelnianie: bez numerów sekwencyjnych, bez TLS, bez jednorazowego użytku. Cztery pola nazw
identyfikujące połączenie są wymieniane w postaci zwykłego tekstu na udostępnionym
Segment HiperSockets (VCHID). Dowolny host w tym samym segmencie HiperSockets
może sfałszować dowolny typ ramki w stosunku do istniejącego połączenia. To jest
właściwość na poziomie protokołu niezmieniona przez tę poprawkę. Poprawka zmniejsza atak
powierzchni do urządzeń równorzędnych znajdujących się w tym samym segmencie HiperSockets.

>_ 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