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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2025-39913— tcp_bpf: Call sk_msg_free() when tcp_bpf_send_verdict() fails to allocate psock->cork.

EPSS 0.03% · P7

Affected Version Matrix 18

VendorProductVersion RangeStatus
LinuxLinux4f738adba30a7cfc006f605707e7aee847ffefa0< 08f58d10f5abf11d297cc910754922498c921f91affected
4f738adba30a7cfc006f605707e7aee847ffefa0< 05366527f44cf4b884f3d9462ae8009be9665856affected
4f738adba30a7cfc006f605707e7aee847ffefa0< 7429b8b9bfbc276fd304fbaebc405f46b421fedfaffected
4f738adba30a7cfc006f605707e7aee847ffefa0< 9c2a6456bdf9794474460d885c359b6c4522d6e3affected
4f738adba30a7cfc006f605707e7aee847ffefa0< 66bcb04a441fbf15d66834b7e3eefb313dd750c8affected
4f738adba30a7cfc006f605707e7aee847ffefa0< 539920180c55f5e13a2488a2339f94e6b8cb69e0affected
4f738adba30a7cfc006f605707e7aee847ffefa0< de89e58368f8f07df005ecc1c86ad94898a999f2affected
4f738adba30a7cfc006f605707e7aee847ffefa0< a3967baad4d533dc254c31e0d221e51c8d223d58affected
… +10 more rows
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2025-39913

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
tcp_bpf: Call sk_msg_free() when tcp_bpf_send_verdict() fails to allocate psock->cork.
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: tcp_bpf: Call sk_msg_free() when tcp_bpf_send_verdict() fails to allocate psock->cork. syzbot reported the splat below. [0] The repro does the following: 1. Load a sk_msg prog that calls bpf_msg_cork_bytes(msg, cork_bytes) 2. Attach the prog to a SOCKMAP 3. Add a socket to the SOCKMAP 4. Activate fault injection 5. Send data less than cork_bytes At 5., the data is carried over to the next sendmsg() as it is smaller than the cork_bytes specified by bpf_msg_cork_bytes(). Then, tcp_bpf_send_verdict() tries to allocate psock->cork to hold the data, but this fails silently due to fault injection + __GFP_NOWARN. If the allocation fails, we need to revert the sk->sk_forward_alloc change done by sk_msg_alloc(). Let's call sk_msg_free() when tcp_bpf_send_verdict fails to allocate psock->cork. The "*copied" also needs to be updated such that a proper error can be returned to the caller, sendmsg. It fails to allocate psock->cork. Nothing has been corked so far, so this patch simply sets "*copied" to 0. [0]: WARNING: net/ipv4/af_inet.c:156 at inet_sock_destruct+0x623/0x730 net/ipv4/af_inet.c:156, CPU#1: syz-executor/5983 Modules linked in: CPU: 1 UID: 0 PID: 5983 Comm: syz-executor Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025 RIP: 0010:inet_sock_destruct+0x623/0x730 net/ipv4/af_inet.c:156 Code: 0f 0b 90 e9 62 fe ff ff e8 7a db b5 f7 90 0f 0b 90 e9 95 fe ff ff e8 6c db b5 f7 90 0f 0b 90 e9 bb fe ff ff e8 5e db b5 f7 90 <0f> 0b 90 e9 e1 fe ff ff 89 f9 80 e1 07 80 c1 03 38 c1 0f 8c 9f fc RSP: 0018:ffffc90000a08b48 EFLAGS: 00010246 RAX: ffffffff8a09d0b2 RBX: dffffc0000000000 RCX: ffff888024a23c80 RDX: 0000000000000100 RSI: 0000000000000fff RDI: 0000000000000000 RBP: 0000000000000fff R08: ffff88807e07c627 R09: 1ffff1100fc0f8c4 R10: dffffc0000000000 R11: ffffed100fc0f8c5 R12: ffff88807e07c380 R13: dffffc0000000000 R14: ffff88807e07c60c R15: 1ffff1100fc0f872 FS: 00005555604c4500(0000) GS:ffff888125af1000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00005555604df5c8 CR3: 0000000032b06000 CR4: 00000000003526f0 Call Trace: <IRQ> __sk_destruct+0x86/0x660 net/core/sock.c:2339 rcu_do_batch kernel/rcu/tree.c:2605 [inline] rcu_core+0xca8/0x1770 kernel/rcu/tree.c:2861 handle_softirqs+0x286/0x870 kernel/softirq.c:579 __do_softirq kernel/softirq.c:613 [inline] invoke_softirq kernel/softirq.c:453 [inline] __irq_exit_rcu+0xca/0x1f0 kernel/softirq.c:680 irq_exit_rcu+0x9/0x30 kernel/softirq.c:696 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1052 [inline] sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1052 </IRQ>
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于tcp_bpf_send_verdict分配psock->cork失败时未调用sk_msg_free,可能导致内存泄漏。
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

VendorProductAffected VersionsCPESubscribe
LinuxLinux 4f738adba30a7cfc006f605707e7aee847ffefa0 ~ 08f58d10f5abf11d297cc910754922498c921f91 -
LinuxLinux 4.17 -

II. Public POCs for CVE-2025-39913

#POC DescriptionSource LinkShenlong Link
1UAF in linux kernel >= 6.1.152 (psock->cork) https://github.com/byteReaper77/CVE-2025-39913POC Details
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2025-39913

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-10-01 · 169 CVEs total

CVE-2022-50462MIPS: vpe-mt: fix possible memory leak while module exiting
CVE-2022-50452net: sched: cake: fix null pointer access issue when cake_init() fails
CVE-2022-50451fs/ntfs3: Fix memory leak on ntfs_fill_super() error path
CVE-2022-50453gpiolib: cdev: fix NULL-pointer dereferences
CVE-2022-50454drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table()
CVE-2022-50457mtd: core: Fix refcount error in del_mtd_device()
CVE-2022-50456btrfs: fix resolving backrefs for inline extent followed by prealloc
CVE-2022-50458clk: tegra: Fix refcount leak in tegra210_clock_init
CVE-2022-50460cifs: Fix xid leak in cifs_flock()
CVE-2022-50459scsi: iscsi: iscsi_tcp: Fix null-ptr-deref while calling getpeername()
CVE-2022-50461net: ethernet: ti: am65-cpsw: Fix PM runtime leakage in am65_cpsw_nuss_ndo_slave_open()
CVE-2022-50467scsi: lpfc: Fix null ndlp ptr dereference in abnormal exit path for GFT_ID
CVE-2023-53488IB/hfi1: Fix possible panic during hotplug remove
CVE-2023-53489tcp/udp: Fix memleaks of sk and zerocopy skbs with TX timestamp.
CVE-2022-50469staging: rtl8723bs: fix potential memory leak in rtw_init_drv_sw()
CVE-2022-50468platform/chrome: cros_usbpd_notify: Fix error handling in cros_usbpd_notify_init()
CVE-2022-50465ext4: fix leaking uninitialized memory in fast-commit journal
CVE-2022-50463powerpc/52xx: Fix a resource leak in an error handling path
CVE-2022-50464mt76: mt7915: Fix PCI device refcount leak in mt7915_pci_init_hif2()
CVE-2022-50448mm/uffd: fix warning without PTE_MARKER_UFFD_WP compiled in

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

IV. Related Vulnerabilities

V. Comments for CVE-2025-39913

No comments yet


Leave a comment