CVE-2025-21792

ax25: Fix refcount leak caused by setting SO_BINDTODEVICE sockopt

MEDIUM
5.5
CVSS Score
Published: February 27, 2025 at 02:18 AM UTC
Updated: August 5, 2026 at 12:44 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.2%
SSVC
No known exploit

Description

In the Linux kernel, the following vulnerability has been resolved: ax25: Fix refcount leak caused by setting SO_BINDTODEVICE sockopt If an AX25 device is bound to a socket by setting the SO_BINDTODEVICE socket option, a refcount leak will occur in ax25_release(). Commit 9fd75b66b8f6 ("ax25: Fix refcount leaks caused by ax25_cb_del()") added decrement of device refcounts in ax25_release(). In order for that to work correctly the refcounts must already be incremented when the device is bound to the socket. An AX25 device can be bound to a socket by either calling ax25_bind() or setting SO_BINDTODEVICE socket option. In both cases the refcounts should be incremented, but in fact it is done only in ax25_bind(). This bug leads to the following issue reported by Syzkaller: ================================================================ refcount_t: decrement hit 0; leaking memory. WARNING: CPU: 1 PID: 5932 at lib/refcount.c:31 refcount_warn_saturate+0x1ed/0x210 lib/refcount.c:31 Modules linked in: CPU: 1 UID: 0 PID: 5932 Comm: syz-executor424 Not tainted 6.13.0-rc4-syzkaller-00110-g4099a71718b0 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 RIP: 0010:refcount_warn_saturate+0x1ed/0x210 lib/refcount.c:31 Call Trace: <TASK> __refcount_dec include/linux/refcount.h:336 [inline] refcount_dec include/linux/refcount.h:351 [inline] ref_tracker_free+0x710/0x820 lib/ref_tracker.c:236 netdev_tracker_free include/linux/netdevice.h:4156 [inline] netdev_put include/linux/netdevice.h:4173 [inline] netdev_put include/linux/netdevice.h:4169 [inline] ax25_release+0x33f/0xa10 net/ax25/af_ax25.c:1069 __sock_release+0xb0/0x270 net/socket.c:640 sock_close+0x1c/0x30 net/socket.c:1408 ... do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f ... </TASK> ================================================================ Fix the implementation of ax25_setsockopt() by adding increment of refcounts for the new device bound, and decrement of refcounts for the old unbound device.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v ≥ 4.14.277v ≥ 4.19.240v ≥ 5.10.112v ≥ 5.15.35v ≥ 5.17.2v ≥ 5.4.1904.14.277 ≤ v < 4.154.19.240 ≤ v < 4.205.10.112 ≤ v < 5.115.15.35 ≤ v < 5.165.17.2 ≤ v < 5.185.17.2 ≤ v < 6.1.1295.18 ≤ v < 6.1.1295.18 ≤ v < 6.12.165.18 ≤ v < 6.13.45.18 ≤ v < 6.145.18 ≤ v < 6.6.795.4.190 ≤ v < 5.56.13 ≤ v < 6.13.46.2 ≤ v < 6.6.796.7 ≤ v < 6.12.164.14.2774.19.240452ae92b99062d2f6a34324eaf705a3b7eac9f8b5.10.1125.15.355.17.25.4.190534156dd4ed768e30a43de0036f45dca7c54818f6.14 rc16.14 rc29e1e088a57c23251f1cfe9601bbd90ade2ea73b99fd75b66b8f68498454d685dc4ba13192ae069b0b20a5ab0f5fb175750c6bafd4cf12daccf00c738c44a453ffe16eb08acdc6129ac4fa0192dbc0456de55a1338e6a48ff1e41ea8db1432496fbe2a62b
Vendor states this is fixed in 470bda72fda0fcf54300466d70ce2de62f7835d2 (fixed)
Vendor states this is fixed in 90056ece99966182dc0e367f3fd2afab46ada847 (fixed)
Vendor states this is fixed in 94a0de224ed52eb2ecd4f4cb1b937b674c9fb955 (fixed)
Vendor states this is fixed in b58f7ca86a7b8e480c06e30c5163c5d2f4e24023 (fixed)
Vendor states this is fixed in bca0902e61731a75fc4860c8720168d9f1bae3b6 (fixed)
Affected range stops below 4.15, so it looks safe — our inference, not a vendor statement
Affected range stops below 4.20, so it looks safe — our inference, not a vendor statement
Affected range stops below 5.11, so it looks safe — our inference, not a vendor statement
Affected range stops below 5.16, so it looks safe — our inference, not a vendor statement
Vendor states this is fixed in 5.18 (unaffected)
Affected range stops below 5.5, so it looks safe — our inference, not a vendor statement
Vendor states this is fixed in 6.1.129 (unaffected)
Vendor states this is fixed in 6.12.16 (unaffected)
Vendor states this is fixed in 6.13.4 (unaffected)
Vendor states this is fixed in 6.14 (unaffected)
Vendor states this is fixed in 6.6.79 (unaffected)

References (6)

Mailing ListPatch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/470bda72fda0fcf54300466d70ce2de62f7835d2
Mailing ListPatch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/90056ece99966182dc0e367f3fd2afab46ada847
Mailing ListPatch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/94a0de224ed52eb2ecd4f4cb1b937b674c9fb955
Mailing ListPatch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/b58f7ca86a7b8e480c06e30c5163c5d2f4e24023
Mailing ListPatch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/bca0902e61731a75fc4860c8720168d9f1bae3b6
Source: af854a3a-2127-422b-91ae-364da2661108
https://lists.debian.org/debian-lts-announce/2025/03/msg00028.html

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

5.5MEDIUMCISA-ADP
Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
NVD-CWE-Other

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card