CVE-2024-26754: gtp: fix use-after-free and null-ptr-deref in gtp_genl_dump_pdp()
In the Linux kernel, the following vulnerability has been resolved:
gtp: fix use-after-free and null-ptr-deref in gtpgenldumppdp()
The gtpnetops pernet operations structure for the subsystem must be registered before registering the generic netlink family.
Syzkaller hit 'general protection fault in gtpgenldumppdp' bug:
general protection fault, probably for non-canonical address 0xdffffc0000000002: 0000 [#1] PREEMPT SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000010-0x0000000000000017] CPU: 1 PID: 5826 Comm: gtp Not tainted 6.8.0-rc3-std-def-alt1 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.0-alt1 04/01/2014 RIP: 0010:gtpgenldumppdp+0x1be/0x800 [gtp] Code: c6 89 c6 e8 64 e9 86 df 58 45 85 f6 0f 85 4e 04 00 00 e8 c5 ee 86 df 48 8b 54 24 18 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 <80> 3c 02 00 0f 85 de 05 00 00 48 8b 44 24 18 4c 8b 30 4c 39 f0 74 RSP: 0018:ffff888014107220 EFLAGS: 00010202 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000002 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 R13: ffff88800fcda588 R14: 0000000000000001 R15: 0000000000000000 FS: 00007f1be4eb05c0(0000) GS:ffff88806ce80000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f1be4e766cf CR3: 000000000c33e000 CR4: 0000000000750ef0 PKRU: 55555554 Call Trace: <TASK> ? showregs+0x90/0xa0 ? dieaddr+0x50/0xd0 ? excgeneralprotection+0x148/0x220 ? asmexcgeneralprotection+0x22/0x30 ? gtpgenldumppdp+0x1be/0x800 [gtp] ? allocskb+0x1dd/0x350 ? pfxallocskb+0x10/0x10 genldumpit+0x11d/0x230 netlinkdump+0x5b9/0xce0 ? lockdephardirqsonprepare+0x253/0x430 ? pfxnetlinkdump+0x10/0x10 ? kasansavetrack+0x10/0x40 ? kasankmalloc+0x9b/0xa0 ? genlstart+0x675/0x970 netlinkdumpstart+0x6fc/0x9f0 genlfamilyrcvmsgdumpit+0x1bb/0x2d0 ? pfxgenlfamilyrcvmsgdumpit+0x10/0x10 ? genlopfromsmall+0x2a/0x440 ? capcapable+0x1d0/0x240 ? pfxgenlstart+0x10/0x10 ? pfxgenldumpit+0x10/0x10 ? pfxgenldone+0x10/0x10 ? securitycapable+0x9d/0xe0
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 5.10.223-1Fixed in 5.10.234-1Fixed in 6.1.129-1Fixed in 6.1.135-1Fixed in 6.12.25-1Fixed in 6.12.27-1 - Compensating control
In the Linux kernel gtp subsystem, register the gtp_net_ops pernet operations structure before registering the generic netlink family to prevent the use-after-free and null-pointer dereference in gtp_genl_dump_pdp().
Event History
Frequently Asked Questions
What is the severity of CVE-2024-26754?
CVE-2024-26754 is classified with a moderate severity due to the potential for use-after-free and null pointer dereference vulnerabilities.
How do I fix CVE-2024-26754?
To fix CVE-2024-26754, it is recommended to update your Linux kernel to versions 5.10.223-1, 5.10.226-1, 6.1.123-1, or later.
Which Linux kernel versions are affected by CVE-2024-26754?
CVE-2024-26754 affects Linux kernel versions from 4.7 to 6.8-rc5.
What systems are impacted by CVE-2024-26754?
Systems running affected versions of the Linux kernel, including various distributions like Debian Linux, are impacted by CVE-2024-26754.
Is there a known exploit for CVE-2024-26754?
As of now, there are no known exploits publicly available for CVE-2024-26754.