Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2025-39703— net, hsr: reject HSR frame if skb can't hold tag

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于net/hsr模块在skb无法容纳标签时未拒绝HSR帧。

CVSS 9.8 · Critical EPSS 0.38% · P30

Affected Version Matrix 19

VendorProduct Version RangeStatus
Linux Linux f6442ee08fe66c8e45c4f246531a2aaf4f17a7a7< 8d9bc4a375a1ba05f7dfa0407de8e510ab9bd14d affected
48b491a5cc74333c4a6a82fe21cea42c055a3b0b< 3ae272ab523dd6bdc26e879027ed79feac9dd1b3 affected
48b491a5cc74333c4a6a82fe21cea42c055a3b0b< b640188b8a6690e685939053c7efdbc7818b5f4e affected
48b491a5cc74333c4a6a82fe21cea42c055a3b0b< b117c41b00902c1a7e24347c405cb82504aeae0b affected
48b491a5cc74333c4a6a82fe21cea42c055a3b0b< acd69b597bd3f76d3b3d322b84082226c00eeaa4 affected
48b491a5cc74333c4a6a82fe21cea42c055a3b0b< 61009439e4bd8d74e705ee15940760321be91d8a affected
48b491a5cc74333c4a6a82fe21cea42c055a3b0b< 7af76e9d18a9fd6f8611b3313c86c190f9b6a5a7 affected
4ffd1d4a6b306ff69cbe412d2c54d2dd349ff436 affected
… +11 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2025-39703

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
net, hsr: reject HSR frame if skb can't hold tag
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: net, hsr: reject HSR frame if skb can't hold tag Receiving HSR frame with insufficient space to hold HSR tag in the skb can result in a crash (kernel BUG): [ 45.390915] skbuff: skb_under_panic: text:ffffffff86f32cac len:26 put:14 head:ffff888042418000 data:ffff888042417ff4 tail:0xe end:0x180 dev:bridge_slave_1 [ 45.392559] ------------[ cut here ]------------ [ 45.392912] kernel BUG at net/core/skbuff.c:211! [ 45.393276] Oops: invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC KASAN NOPTI [ 45.393809] CPU: 1 UID: 0 PID: 2496 Comm: reproducer Not tainted 6.15.0 #12 PREEMPT(undef) [ 45.394433] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 45.395273] RIP: 0010:skb_panic+0x15b/0x1d0 <snip registers, remove unreliable trace> [ 45.402911] Call Trace: [ 45.403105] <IRQ> [ 45.404470] skb_push+0xcd/0xf0 [ 45.404726] br_dev_queue_push_xmit+0x7c/0x6c0 [ 45.406513] br_forward_finish+0x128/0x260 [ 45.408483] __br_forward+0x42d/0x590 [ 45.409464] maybe_deliver+0x2eb/0x420 [ 45.409763] br_flood+0x174/0x4a0 [ 45.410030] br_handle_frame_finish+0xc7c/0x1bc0 [ 45.411618] br_handle_frame+0xac3/0x1230 [ 45.413674] __netif_receive_skb_core.constprop.0+0x808/0x3df0 [ 45.422966] __netif_receive_skb_one_core+0xb4/0x1f0 [ 45.424478] __netif_receive_skb+0x22/0x170 [ 45.424806] process_backlog+0x242/0x6d0 [ 45.425116] __napi_poll+0xbb/0x630 [ 45.425394] net_rx_action+0x4d1/0xcc0 [ 45.427613] handle_softirqs+0x1a4/0x580 [ 45.427926] do_softirq+0x74/0x90 [ 45.428196] </IRQ> This issue was found by syzkaller. The panic happens in br_dev_queue_push_xmit() once it receives a corrupted skb with ETH header already pushed in linear data. When it attempts the skb_push() call, there's not enough headroom and skb_push() panics. The corrupted skb is put on the queue by HSR layer, which makes a sequence of unintended transformations when it receives a specific corrupted HSR frame (with incomplete TAG). Fix it by dropping and consuming frames that are not long enough to contain both ethernet and hsr headers. Alternative fix would be to check for enough headroom before skb_push() in br_dev_queue_push_xmit(). In the reproducer, this is injected via AF_PACKET, but I don't easily see why it couldn't be sent over the wire from adjacent network. Further Details: In the reproducer, the following network interface chain is set up: ┌────────────────┐ ┌────────────────┐ │ veth0_to_hsr ├───┤ hsr_slave0 ┼───┐ └────────────────┘ └────────────────┘ │ │ ┌──────┐ ├─┤ hsr0 ├───┐ │ └──────┘ │ ┌────────────────┐ ┌────────────────┐ │ │┌────────┐ │ veth1_to_hsr ┼───┤ hsr_slave1 ├───┘ └┤ │ └────────────────┘ └────────────────┘ ┌┼ bridge │ ││ │ │└────────┘ │ ┌───────┐ │ │ ... ├──────┘ └───────┘ To trigger the events leading up to crash, reproducer sends a corrupted HSR fr ---truncated---
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于net/hsr模块在skb无法容纳标签时未拒绝HSR帧。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux f6442ee08fe66c8e45c4f246531a2aaf4f17a7a7 ~ 8d9bc4a375a1ba05f7dfa0407de8e510ab9bd14d -
Linux Linux 5.13 -

II. Public POCs for CVE-2025-39703

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2025-39703

请登录查看更多情报信息。

Same Patch Batch · Linux · 2025-09-05 · 60 CVEs total

CVE-2025-39726 9.8 CRITICAL s390/ism: fix concurrency management in ism_cmd()
CVE-2025-39682 9.8 CRITICAL tls: fix handling of zero-length records on the rx_list
CVE-2025-38734 9.8 CRITICAL net/smc: fix UAF on smcsk after smc_listen_out()
CVE-2025-39702 9.8 CRITICAL ipv6: sr: Fix MAC comparison to be constant-time
CVE-2025-39673 9.8 CRITICAL ppp: fix race conditions in ppp_fill_forward_path
CVE-2025-38737 9.8 CRITICAL cifs: Fix oops due to uninitialised variable
CVE-2025-39704 8.8 HIGH LoongArch: KVM: Fix stack protector issue in send_ipi_data()
CVE-2025-39718 8.4 HIGH vsock/virtio: Validate length in packet header before skb_put()
CVE-2025-39714 7.8 HIGH media: usbtv: Lock resolution while streaming
CVE-2025-39711 7.8 HIGH media: ivsc: Fix crash at shutdown due to missing mei_cldev_disable() calls
CVE-2025-39710 7.8 HIGH media: venus: Add a check for packet size after reading from shared memory
CVE-2025-39696 7.8 HIGH ALSA: hda: tas2781: Fix wrong reference of tasdevice_priv
CVE-2025-39717 7.8 HIGH open_tree_attr: do not allow id-mapping changes without OPEN_TREE_CLONE
CVE-2025-39698 7.8 HIGH io_uring/futex: ensure io_futex_wait() cleans up properly on failure
CVE-2025-39697 7.8 HIGH NFS: Fix a race when updating an existing write
CVE-2025-38731 7.8 HIGH drm/xe: Fix vm_bind_ioctl double free bug
CVE-2025-39691 7.8 HIGH fs/buffer: fix use-after-free when call bh_read() helper
CVE-2025-39689 7.8 HIGH ftrace: Also allocate and copy hash for reading of filter files
CVE-2025-39677 7.8 HIGH net/sched: Fix backlog accounting in qdisc_dequeue_internal
CVE-2025-39680 7.8 HIGH i2c: rtl9300: Fix out-of-bounds bug in rtl9300_i2c_smbus_xfer

Showing top 20 of 60 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2025-39703

No comments yet


Leave a comment