Read the docs
TI-2024-27274 Aliases CVE-2024-40910GHSA-37qc-prgq-xwcm

ax25: Fix refcount imbalance on inbound connections

Priority LOW 38Published · Updated

Key facts

Attack vector
Adjacent network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA.

Summary

In the Linux kernel, the following vulnerability has been resolved: ax25: Fix refcount imbalance on inbound connections When releasing a socket in ax25_release(), we call netdev_put() to decrease the refcount on the associated ax.25 device. However, the execution path for accepting an incoming connection never calls netdev_hold(). This imbalance leads to refcount errors, and ultimately to kernel crashes. A typical call trace for the above situation will start with one of the following errors: refcount_t: decrement hit 0; leaking memory. refcount_t: underflow; use-after-free. And will then have a trace like: Call Trace: <TASK> ? show_regs+0x64/0x70 ? __warn+0x83/0x120 ? refcount_warn_saturate+0xb2/0x100 ? report_bug+0x158/0x190 ? prb_read_valid+0x20/0x30 ? handle_bug+0x3e/0x70 ? exc_invalid_op+0x1c/0x70 ? asm_exc_invalid_op+0x1f/0x30 ? refcount_warn_saturate+0xb2/0x100 ? refcount_warn_saturate+0xb2/0x100 ax25_release+0x2ad/0x360 __sock_release+0x35/0xa0 sock_close+0x19/0x20 [...] On reboot (or any attempt to remove the interface), the kernel gets stuck in an infinite loop: unregister_netdevice: waiting for ax0 to become free. Usage count = 0 This patch corrects these issues by ensuring that we call netdev_hold() and ax25_dev_hold() for new connections in ax25_accept(). This makes the logic leading to ax25_accept() match the logic for ax25_bind(): in both cases we increment the refcount, which is ultimately decremented in ax25_release().

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00446 39th percentileScored 2026-11-07
Fix Fixed Linux (Linux): 4.15, 4.20, 5.5 +7

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
LinuxLinux4.14.277 to before 4.15; 4.19.240 to before 4.20; 5.4.190 to before 5.5; 5.10.112 to before 5.11; 5.15.35 to before 5.16; 5.17.2 to before 5.184.15, 4.20, 5.5, 5.11, 5.16, 5.18Patch availableCNA
LinuxLinux5.18 and later6.1.95, 6.6.35, 6.9.6, 6.10Patch availableCNA
  • Linux VendorLinux Affected 4.14.277 to before 4.15; 4.19.240 to before 4.20; 5.4.190 to before 5.5; 5.10.112 to before 5.11; 5.15.35 to before 5.16; 5.17.2 to before 5.18 Fixed in 4.15, 4.20, 5.5, 5.11, 5.16, 5.18 Patch available CNA
  • Linux VendorLinux Affected 5.18 and later Fixed in 6.1.95, 6.6.35, 6.9.6, 6.10 Patch available CNA

CPE configurations NVD · 3

CPEVersionsRoleVendor
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*5.18 to before 6.1.95; 6.2 to before 6.6.35; 6.7 to before 6.9.6VulnerableLinux
cpe:2.3:o:linux:linux_kernel:6.10:rc1:*:*:*:*:*:*6.10 rc1VulnerableLinux
cpe:2.3:o:linux:linux_kernel:6.10:rc2:*:*:*:*:*:*6.10 rc2VulnerableLinux
  • cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* Versions 5.18 to before 6.1.95; 6.2 to before 6.6.35; 6.7 to before 6.9.6 Vulnerable ·Linux
  • cpe:2.3:o:linux:linux_kernel:6.10:rc1:*:*:*:*:*:* Versions 6.10 rc1 Vulnerable ·Linux
  • cpe:2.3:o:linux:linux_kernel:6.10:rc2:*:*:*:*:*:* Versions 6.10 rc2 Vulnerable ·Linux

Remediation

  • Fix · CNA Linux (Linux) Fixed in 4.15, 4.20, 5.5, 5.11, 5.16, 5.18
  • Fix · CNA Linux (Linux) Fixed in 6.1.95, 6.6.35, 6.9.6, 6.10

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

Not affected: 4 products
  • Red Hat Enterprise Linux 6
  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 8
  • Red Hat Enterprise Linux 9

Timeline

  1. 2026-10-02 Threatist record created from CVE-2024-40910
  2. 2026-10-03 Alias added: GHSA-37qc-prgq-xwcm

References

  • TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
  • TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
  • TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
  • TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
  • TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
  • TI-2021-05514 Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACE KEVCVSS 3.1HIGH 8.3
See all 15278 →

Sources