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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2025-68241— ipv4: route: Prevent rt_bind_exception() from rebinding stale fnhe

EPSS 0.07% · P21
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2025-68241

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
ipv4: route: Prevent rt_bind_exception() from rebinding stale fnhe
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: ipv4: route: Prevent rt_bind_exception() from rebinding stale fnhe The sit driver's packet transmission path calls: sit_tunnel_xmit() -> update_or_create_fnhe(), which lead to fnhe_remove_oldest() being called to delete entries exceeding FNHE_RECLAIM_DEPTH+random. The race window is between fnhe_remove_oldest() selecting fnheX for deletion and the subsequent kfree_rcu(). During this time, the concurrent path's __mkroute_output() -> find_exception() can fetch the soon-to-be-deleted fnheX, and rt_bind_exception() then binds it with a new dst using a dst_hold(). When the original fnheX is freed via RCU, the dst reference remains permanently leaked. CPU 0 CPU 1 __mkroute_output() find_exception() [fnheX] update_or_create_fnhe() fnhe_remove_oldest() [fnheX] rt_bind_exception() [bind dst] RCU callback [fnheX freed, dst leak] This issue manifests as a device reference count leak and a warning in dmesg when unregistering the net device: unregister_netdevice: waiting for sitX to become free. Usage count = N Ido Schimmel provided the simple test validation method [1]. The fix clears 'oldest->fnhe_daddr' before calling fnhe_flush_routes(). Since rt_bind_exception() checks this field, setting it to zero prevents the stale fnhe from being reused and bound to a new dst just before it is freed. [1] ip netns add ns1 ip -n ns1 link set dev lo up ip -n ns1 address add 192.0.2.1/32 dev lo ip -n ns1 link add name dummy1 up type dummy ip -n ns1 route add 192.0.2.2/32 dev dummy1 ip -n ns1 link add name gretap1 up arp off type gretap \ local 192.0.2.1 remote 192.0.2.2 ip -n ns1 route add 198.51.0.0/16 dev gretap1 taskset -c 0 ip netns exec ns1 mausezahn gretap1 \ -A 198.51.100.1 -B 198.51.0.0/16 -t udp -p 1000 -c 0 -q & taskset -c 2 ip netns exec ns1 mausezahn gretap1 \ -A 198.51.100.1 -B 198.51.0.0/16 -t udp -p 1000 -c 0 -q & sleep 10 ip netns pids ns1 | xargs kill ip netns del ns1
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存在安全漏洞,该漏洞源于rt_bind_exception可能绑定过时路由异常,可能导致内存泄漏。
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 e46e23c289f62ccd8e2230d9ce652072d777ff30 ~ 69d35c12168f9c59b159ae566f77dfad9f96d7ca -
LinuxLinux 5.15 -

II. Public POCs for CVE-2025-68241

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2025-68241

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-12-16 · 157 CVEs total

CVE-2025-682639.8 CRITICALksmbd: ipc: fix use-after-free in ipc_msg_send_request
CVE-2025-68260rust_binder: fix race condition on death_list
CVE-2025-68251erofs: avoid infinite loops due to corrupted subpage compact indexes
CVE-2025-68252misc: fastrpc: Fix dma_buf object leak in fastrpc_map_lookup
CVE-2025-68253mm: don't spin in add_stack_record when gfp flags don't allow
CVE-2025-68254staging: rtl8723bs: fix out-of-bounds read in OnBeacon ESR IE parsing
CVE-2025-68255staging: rtl8723bs: fix stack buffer overflow in OnAssocReq IE parsing
CVE-2025-68256staging: rtl8723bs: fix out-of-bounds read in rtw_get_ie() parser
CVE-2025-68257comedi: check device's attached status in compat ioctls
CVE-2025-68258comedi: multiq3: sanitize config options in multiq3_attach()
CVE-2025-68259KVM: SVM: Don't skip unrelated instruction if INT3/INTO is replaced
CVE-2025-68265nvme: fix admin request_queue lifetime
CVE-2025-68283libceph: replace BUG_ON with bounds check for map->max_osd
CVE-2025-68282usb: gadget: udc: fix use-after-free in usb_gadget_state_work
CVE-2025-68281ASoC: SDCA: bug fix while parsing mipi-sdca-control-cn-list
CVE-2025-68266bfs: Reconstruct file type when loading from disk
CVE-2025-68262crypto: zstd - fix double-free in per-CPU stream cleanup
CVE-2025-68261ext4: add i_data_sem protection in ext4_destroy_inline_data_nolock()
CVE-2025-68250hung_task: fix warnings caused by unaligned lock pointers
CVE-2025-68264ext4: refresh inline data size before write operations

Showing top 20 of 157 CVEs. View all on vendor page → →

IV. Related Vulnerabilities

V. Comments for CVE-2025-68241

No comments yet


Leave a comment