Katalog CVE

CVE-2026-98377

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux podatność w funkcji __vlan_insert_inner_tag(), która nie wymaga obecności nagłówka MAC przed jego nadpisaniem. Przy wysyłce bardzo krótkiej ramki przez urządzenie IFF_TUN kolejne operacje push VLAN mogą wciągnąć do ramki niezainicjalizowane bajty z pamięci slab, powodując wyciek danych jądra.

Ocena ryzyka

Może dojść do wycieku niezainicjalizowanej pamięci jądra do sieci, co potencjalnie ujawnia dane wrażliwe lub ułatwia obejście mechanizmów bezpieczeństwa (ASLR).

Rekomendacja

Zaktualizuj jądro Linux do wersji z poprawką wymagającą obecności nagłówka MAC w __vlan_insert_inner_tag(). Ogranicz możliwość tworzenia urządzeń IFF_TUN oraz wysyłania surowych ramek AF_PACKET do zaufanych użytkowników.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: vlan: require the MAC header to be present in __vlan_insert_inner_tag() __vlan_insert_inner_tag() only guarantees head room via skb_cow_head(), never that mac_len bytes of MAC header are present. Its ETH_HLEN wrappers - __vlan_insert_tag() under skb_vlan_push(), and vlan_insert_tag() under validate_xmit_vlan() on the generic transmit path - therefore rewrite the first 16 bytes at skb->data: a 12-byte memmove plus two 2-byte stores at +12 and +14. No caller supplies the bound, while the pop helpers use skb_ensure_writable()/pskb_may_pull(). An IFF_TUN device has hard_header_len == 0, so packet_snd() accepts a one-byte AF_PACKET/SOCK_RAW frame. The first vlan push only sets a hwaccel tag; the next - clsact "action vlan push" or bpf_skb_vlan_push() - enters the helper with skb->len still 1. The head comes from skbuff_small_head without __GFP_ZERO, so each push drags bytes from beyond skb->tail into the frame. After three the one-byte send leaves as 13 bytes carrying 11 bytes of uninitialised slab: 0000: 5a b3 62 12 80 88 ff ff 00 b3 62 12 81 `------------------------------' only 0x5a was sent; the rest is slab, here the top 56 bits of a linear-map address Require the MAC header the helper rewrites to be present, so such a frame is dropped rather than transmitted.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS