CRITICAL🇬🇧 English

CVE-2026-43037

Linux Kernel: przepełnienie bufora stosu w ip4ip6_err() tunelu IPv6

CVSS 9.8v3.1pub. 2026-05-01upd. 2026-07-02

Podatność w sterowniku ip6_tunnel jądra Linux powoduje przepełnienie bufora stosu (stack buffer overflow) podczas obsługi błędów ICMP w tunelach IPv4-over-IPv6. Luka jest krytyczna, ponieważ atakujący sieciowy bez uwierzytelnienia może potencjalnie wykonać dowolny kod w kontekście jądra systemu.

Pokaż oryginał (EN)

In the Linux kernel, the following vulnerability has been resolved: ip6_tunnel: clear skb2->cb[] in ip4ip6_err() Oskar Kjos reported the following problem. ip4ip6_err() calls icmp_send() on a cloned skb whose cb[] was written by the IPv6 receive path as struct inet6_skb_parm. icmp_send() passes IPCB(skb2) to __ip_options_echo(), which interprets that cb[] region as struct inet_skb_parm (IPv4). The layouts differ: inet6_skb_parm.nhoff at offset 14 overlaps inet_skb_parm.opt.rr, producing a non-zero rr value. __ip_options_echo() then reads optlen from attacker-controlled packet data at sptr[rr+1] and copies that many bytes into dopt->__data, a fixed 40-byte stack buffer (IP_OPTIONS_DATA_FIXED_SIZE). To fix this we clear skb2->cb[], as suggested by Oskar Kjos. Also add minimal IPv4 header validation (version == 4, ihl >= 5).

🤖 Analiza AI
Jak działa

Funkcja ip4ip6_err() wywołuje icmp_send() na sklonowanym pakiecie (skb), którego pole cb[] zostało uprzednio wypełnione przez ścieżkę odbioru IPv6 strukturą inet6_skb_parm. Funkcja icmp_send() przekazuje makro IPCB(skb2) do __ip_options_echo(), które interpretuje ten sam obszar cb[] jako strukturę inet_skb_parm (IPv4). Ponieważ układy obu struktur różnią się, pole inet6_skb_parm.nhoff pod offsetem 14 nakłada się na inet_skb_parm.opt.rr, nadając mu wartość niezerową. W konsekwencji __ip_options_echo() odczytuje wartość optlen z danych pakietu kontrolowanych przez atakującego (sptr[rr+1]) i kopiuje odpowiadającą liczbę bajtów do bufora dopt->__data na stosie, który ma stały rozmiar 40 bajtów (IP_OPTIONS_DATA_FIXED_SIZE). Poprawka polega na wyzerowaniu skb2->cb[] przed przekazaniem pakietu oraz dodaniu minimalnej walidacji nagłówka IPv4 (version == 4, ihl >= 5).

Skutki

Atakujący zdalny, nieuwierzytelniony może przepełnić bufor stosu w jądrze Linux, co może prowadzić do wykonania dowolnego kodu w przestrzeni jądra (RCE), a tym samym do pełnego przejęcia kontroli nad systemem, utraty poufności, integralności i dostępności danych.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami — poprawki zostały opublikowane w repozytorium kernel.org pod adresami wskazanymi w sekcji referencji CVE. Zalecana jest jak najszybsza aktualizacja jądra do wersji zawierającej opisane poprawki.

Kogo dotyczy

Jądro Linux (Linux Kernel) — konkretne wersje wskazane w referencjach producenta (commity poprawkowe dostępne w repozytorium kernel.org)

Uwagi

Podatność została zgłoszona przez Oskara Kjosa, który zidentyfikował problem nakładania się struktur cb[] i zaproponował rozwiązanie polegające na wyzerowaniu skb2->cb[].

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Linux Kernel

    OS
    Linux
    7.05.11 – 5.15.203 (bez)5.16 – 6.1.168 (bez)6.2 – 6.6.134 (bez)2.6.22 – 5.10.253 (bez)6.13 – 6.18.22 (bez)6.19 – 6.19.12 (bez)6.7 – 6.12.81 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2025-10585CRITICAL9.8⚠ KEVPL ✓ten sam produkt

Type confusion w V8 (Google Chrome) — zdalne uszkodzenie sterty

CVE-2025-34028CRITICAL9.3⚠ KEVPL ✓ten sam produkt

Commvault Command Center – nieuwierzytelniony RCE przez path traversal w ZIP

CVE-2022-47986CRITICAL9.8⚠ KEVten sam produkt

IBM Aspera Faspex 4.4.2 Patch Level 1 and earlier could allow a remote attacker to execute arbitrary code on t...

CVE-2022-22954CRITICAL9.8⚠ KEVten sam produkt

VMware Workspace ONE Access and Identity Manager contain a remote code execution vulnerability due to server-s...

CVE-2020-4006CRITICAL9.1⚠ KEVten sam produkt

VMware Workspace One Access, Access Connector, Identity Manager, and Identity Manager Connector address have a...