CVE-2023-53731: netlink: fix potential deadlock in netlink_set_err()
In the Linux kernel, the following vulnerability has been resolved:
netlink: fix potential deadlock in netlinkseterr()
syzbot reported a possible deadlock in netlinkseterr() [1]
A similar issue was fixed in commit 1d482e666b8e ("netlink: disable IRQs for netlinklocktable()") in netlinklocktable()
This patch adds IRQ safety to netlinkseterr() and netlinkdiagdump() which were not covered by cited commit.
[1]
WARNING: possible irq lock inversion dependency detected 6.4.0-rc6-syzkaller-00240-g4e9f0ec38852 #0 Not tainted
syz-executor.2/23011 just changed the state of lock: ffffffff8e1a7a58 (nltablelock){.+.?}-{2:2}, at: netlinkseterr+0x2e/0x3a0 net/netlink/afnetlink.c:1612 but this lock was taken by another, SOFTIRQ-safe lock in the past: (&local->queuestopreasonlock){..-.}-{2:2}
and interrupts could create inverse lock ordering between them.
other info that might help us debug this: Possible interrupt unsafe locking scenario:
CPU0 CPU1 ---- ---- lock(nltablelock); localirqdisable(); lock(&local->queuestopreasonlock); lock(nltablelock); <Interrupt> lock(&local->queuestopreasonlock);
DEADLOCK
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2023-53731?
CVE-2023-53731 is considered a moderate severity vulnerability due to its potential to cause deadlocks.
How do I fix CVE-2023-53731?
To fix CVE-2023-53731, update the Linux kernel to the latest version where the vulnerability has been resolved.
What systems are affected by CVE-2023-53731?
CVE-2023-53731 affects numerous distributions of the Linux kernel that utilize the netlink functionality.
What are the potential consequences of CVE-2023-53731?
The potential consequences of CVE-2023-53731 include system hangs and denial of service due to deadlock scenarios.
Is CVE-2023-53731 exploitability likely?
The exploitability of CVE-2023-53731 is considered low in normal operational conditions but remains a concern in specific high-traffic environments.