Skip to main content

Linux Kernel EUVDEUVD-2026-38712

| CVE-2026-52942 HIGH
Out-of-bounds Read (CWE-125)
2026-06-24 Linux GHSA-3p98-fq5j-wx55
7.1
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
7.1 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
vuln.today AI
6.1 MEDIUM

Local CAP_NET_RAW gives PR:L; leaked bytes go to the kernel log so C:L not C:H; primary real impact is a slab OOB fault/DoS, hence A:H, no integrity impact.

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:H
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE
5.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Red Hat
7.0 MEDIUM
qualitative

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
High

Lifecycle Timeline

5
Analysis Generated
Jun 28, 2026 - 08:29 vuln.today
CVSS changed
Jun 28, 2026 - 08:22 NVD
7.1 (HIGH)
Patch available
Jun 24, 2026 - 09:16 EUVD
CVE Published
Jun 24, 2026 - 07:14 cve.org
HIGH 7.1
CVE Published
Jun 24, 2026 - 07:14 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

In the Linux kernel, the following vulnerability has been resolved:

netfilter: nf_log: validate MAC header was set before dumping it

The fallback path of dump_mac_header() guards the MAC header access only with "skb->mac_header != skb->network_header", without checking skb_mac_header_was_set(). When the MAC header is unset, mac_header is 0xffff, so the test passes and skb_mac_header(skb) returns skb->head + 0xffff, ~64 KiB past the buffer; the loop then reads dev->hard_header_len bytes out of bounds into the kernel log.

This is reachable via the netdev logger: nf_log_unknown_packet() calls dump_mac_header() unconditionally, and an skb sent through AF_PACKET with PACKET_QDISC_BYPASS reaches the egress hook with mac_header still unset (__dev_queue_xmit(), which would reset it, is bypassed).

Add the skb_mac_header_was_set() check the ARPHRD_ETHER path already uses, and replace the open-coded MAC header length test with skb_mac_header_len(). Only skbs with an unset MAC header are affected; valid ones are dumped as before.

BUG: KASAN: slab-out-of-bounds in dump_mac_header (net/netfilter/nf_log_syslog.c:831) Read of size 1 at addr ffff88800ea49d3f by task exploit/148 Call Trace: kasan_report (mm/kasan/report.c:595) dump_mac_header (net/netfilter/nf_log_syslog.c:831) nf_log_netdev_packet (net/netfilter/nf_log_syslog.c:938 net/netfilter/nf_log_syslog.c:963) nf_log_packet (net/netfilter/nf_log.c:260) nft_log_eval (net/netfilter/nft_log.c:60) nft_do_chain (net/netfilter/nf_tables_core.c:285) nft_do_chain_netdev (net/netfilter/nft_chain_filter.c:307) nf_hook_slow (net/netfilter/core.c:619) nf_hook_direct_egress (net/packet/af_packet.c:257) packet_xmit (net/packet/af_packet.c:280) packet_sendmsg (net/packet/af_packet.c:3114) __sys_sendto (net/socket.c:2265)

AnalysisAI

Out-of-bounds kernel memory read in the Linux kernel netfilter netdev logger (nf_log_syslog) lets a local low-privileged attacker leak adjacent slab memory into the kernel log and potentially crash the system. The flaw is in dump_mac_header(), whose fallback path tests skb->mac_header != skb->network_header but omits skb_mac_header_was_set(); an unset MAC header (value 0xffff) passes the check and causes a read ~64 KiB past the skb buffer. Fixed in stable kernels (e.g., 6.18.36, 6.12.94, 6.6.143, 6.1.176, 5.15.210, 7.0.13/7.1); no public exploit identified at time of analysis and EPSS is low at 0.17%.

Technical ContextAI

The bug lives in net/netfilter/nf_log_syslog.c, the syslog/netdev packet logger used by nftables 'log' statements. An sk_buff carries a mac_header offset into skb->head; when the MAC header was never set, that offset is the sentinel 0xffff (~64 KiB), and skb_mac_header() therefore returns a pointer far past the allocated buffer. The fallback branch of dump_mac_header() validated only that mac_header differs from network_header, so it dereferenced this poisoned pointer and looped over dev->hard_header_len bytes, reading out of bounds. The trigger path is specific: nf_log_unknown_packet() -> dump_mac_header() is called unconditionally by the netdev family logger, and a packet injected via AF_PACKET with PACKET_QDISC_BYPASS reaches the egress nf_hook with mac_header still unset because __dev_queue_xmit() (which would reset it) is bypassed. Although the input lists CWE as N/A, this is a classic out-of-bounds read (CWE-125), tagged 'Buffer Overflow'; the fix adds the skb_mac_header_was_set() guard already used by the ARPHRD_ETHER path and switches to skb_mac_header_len(). Affected products per CPE are limited to cpe:2.3:a:linux:linux (the upstream Linux kernel).

RemediationAI

Vendor-released patch: upgrade to a fixed stable kernel for your series - 5.15.210, 6.1.176, 6.6.143, 6.12.94, 6.18.36, or 7.0.13/7.1 - or apply the corresponding stable commits listed at git.kernel.org (e.g., https://git.kernel.org/stable/c/d704ee9c7bc68a161684c51a7ac05b446dcf38d4) via your distribution's kernel update. Until patched, reduce exposure with targeted compensating controls: remove or avoid nftables netdev-family chains that contain 'log' statements on egress (the only path that calls the vulnerable logger), which eliminates the trigger at the cost of losing that packet logging; and restrict CAP_NET_RAW / AF_PACKET socket creation for untrusted local users and containers (e.g., drop CAP_NET_RAW in container runtimes and seccomp-filter socket(AF_PACKET)), accepting that legitimate raw-socket tools like tcpdump in those contexts will break. These mitigations are only relevant where such logging rules exist; default systems without netdev log rules are not reachable.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

Share

EUVD-2026-38712 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy