vulnerability

Ubuntu: (Multiple Advisories) (CVE-2024-56658): Linux kernel vulnerabilities

Severity
7
CVSS
(AV:L/AC:L/Au:S/C:C/I:C/A:C)
Published
Dec 27, 2024
Added
Mar 6, 2025
Modified
Aug 18, 2025

Description

In the Linux kernel, the following vulnerability has been resolved:

net: defer final 'struct net' free in netns dismantle

Ilya reported a slab-use-after-free in dst_destroy [1]

Issue is in xfrm6_net_init() and xfrm4_net_init() :

They copy xfrm[46]_dst_ops_template into net->xfrm.xfrm[46]_dst_ops.

But net structure might be freed before all the dst callbacks are
called. So when dst_destroy() calls later :

if (dst->ops->destroy)
dst->ops->destroy(dst);

dst->ops points to the old net->xfrm.xfrm[46]_dst_ops, which has been freed.

See a relevant issue fixed in :

ac888d58869b ("net: do not delay dst_entries_add() in dst_release()")

A fix is to queue the 'struct net' to be freed after one
another cleanup_net() round (and existing rcu_barrier())

[1]

BUG: KASAN: slab-use-after-free in dst_destroy (net/core/dst.c:112)
Read of size 8 at addr ffff8882137ccab0 by task swapper/37/0
Dec 03 05:46:18 kernel:
CPU: 37 UID: 0 PID: 0 Comm: swapper/37 Kdump: loaded Not tainted 6.12.0 #67
Hardware name: Red Hat KVM/RHEL, BIOS 1.16.1-1.el9 04/01/2014
Call Trace:
<IRQ>
dump_stack_lvl (lib/dump_stack.c:124)
print_address_description.constprop.0 (mm/kasan/report.c:378)
? dst_destroy (net/core/dst.c:112)
print_report (mm/kasan/report.c:489)
? dst_destroy (net/core/dst.c:112)
? kasan_addr_to_slab (mm/kasan/common.c:37)
kasan_report (mm/kasan/report.c:603)
? dst_destroy (net/core/dst.c:112)
? rcu_do_batch (kernel/rcu/tree.c:2567)
dst_destroy (net/core/dst.c:112)
rcu_do_batch (kernel/rcu/tree.c:2567)
? __pfx_rcu_do_batch (kernel/rcu/tree.c:2491)
? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4339 kernel/locking/lockdep.c:4406)
rcu_core (kernel/rcu/tree.c:2825)
handle_softirqs (kernel/softirq.c:554)
__irq_exit_rcu (kernel/softirq.c:589 kernel/softirq.c:428 kernel/softirq.c:637)
irq_exit_rcu (kernel/softirq.c:651)
sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1049 arch/x86/kernel/apic/apic.c:1049)
</IRQ>
<TASK>
asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:702)
RIP: 0010:default_idle (./arch/x86/include/asm/irqflags.h:37 ./arch/x86/include/asm/irqflags.h:92 arch/x86/kernel/process.c:743)
Code: 00 4d 29 c8 4c 01 c7 4c 29 c2 e9 6e ff ff ff 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 66 90 0f 00 2d c7 c9 27 00 fb f4 <fa> c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 90
RSP: 0018:ffff888100d2fe00 EFLAGS: 00000246
RAX: 00000000001870ed RBX: 1ffff110201a5fc2 RCX: ffffffffb61a3e46
RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffffb3d4d123
RBP: 0000000000000000 R08: 0000000000000001 R09: ffffed11c7e1835d
R10: ffff888e3f0c1aeb R11: 0000000000000000 R12: 0000000000000000
R13: ffff888100d20000 R14: dffffc0000000000 R15: 0000000000000000
? ct_kernel_exit.constprop.0 (kernel/context_tracking.c:148)
? cpuidle_idle_call (kernel/sched/idle.c:186)
default_idle_call (./include/linux/cpuidle.h:143 kernel/sched/idle.c:118)
cpuidle_idle_call (kernel/sched/idle.c:186)
? __pfx_cpuidle_idle_call (kernel/sched/idle.c:168)
? lock_release (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5848)
? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406)
? tsc_verify_tsc_adjust (arch/x86/kernel/tsc_sync.c:59)
do_idle (kernel/sched/idle.c:326)
cpu_startup_entry (kernel/sched/idle.c:423 (discriminator 1))
start_secondary (arch/x86/kernel/smpboot.c:202 arch/x86/kernel/smpboot.c:282)
? __pfx_start_secondary (arch/x86/kernel/smpboot.c:232)
? soft_restart_cpu (arch/x86/kernel/head_64.S:452)
common_startup_64 (arch/x86/kernel/head_64.S:414)
</TASK>
Dec 03 05:46:18 kernel:
Allocated by task 12184:
kasan_save_stack (mm/kasan/common.c:48)
kasan_save_track (./arch/x86/include/asm/current.h:49 mm/kasan/common.c:60 mm/kasan/common.c:69)
__kasan_slab_alloc (mm/kasan/common.c:319 mm/kasan/common.c:345)
kmem_cache_alloc_noprof (mm/slub.c:4085 mm/slub.c:4134 mm/slub.c:4141)
copy_net_ns (net/core/net_namespace.c:421 net/core/net_namespace.c:480)
create_new_namespaces
---truncated---

Solutions

ubuntu-upgrade-linux-image-3-13-0-205-genericubuntu-upgrade-linux-image-3-13-0-205-lowlatencyubuntu-upgrade-linux-image-4-15-0-1134-fipsubuntu-upgrade-linux-image-4-15-0-1141-oracleubuntu-upgrade-linux-image-4-15-0-1162-kvmubuntu-upgrade-linux-image-4-15-0-1172-gcpubuntu-upgrade-linux-image-4-15-0-1179-awsubuntu-upgrade-linux-image-4-15-0-1187-azureubuntu-upgrade-linux-image-4-15-0-2080-gcp-fipsubuntu-upgrade-linux-image-4-15-0-2096-azure-fipsubuntu-upgrade-linux-image-4-15-0-2117-aws-fipsubuntu-upgrade-linux-image-4-15-0-236-genericubuntu-upgrade-linux-image-4-15-0-236-lowlatencyubuntu-upgrade-linux-image-4-4-0-1112-fipsubuntu-upgrade-linux-image-4-4-0-1142-awsubuntu-upgrade-linux-image-4-4-0-1143-kvmubuntu-upgrade-linux-image-4-4-0-1180-awsubuntu-upgrade-linux-image-4-4-0-267-genericubuntu-upgrade-linux-image-4-4-0-267-lowlatencyubuntu-upgrade-linux-image-5-15-0-1022-nvidia-tegra-igxubuntu-upgrade-linux-image-5-15-0-1022-nvidia-tegra-igx-rtubuntu-upgrade-linux-image-5-15-0-1034-nvidia-tegraubuntu-upgrade-linux-image-5-15-0-1034-nvidia-tegra-rtubuntu-upgrade-linux-image-5-15-0-1046-xilinx-zynqmpubuntu-upgrade-linux-image-5-15-0-1063-gkeopubuntu-upgrade-linux-image-5-15-0-1073-ibmubuntu-upgrade-linux-image-5-15-0-1074-ibmubuntu-upgrade-linux-image-5-15-0-1074-intel-iot-realtimeubuntu-upgrade-linux-image-5-15-0-1075-nvidiaubuntu-upgrade-linux-image-5-15-0-1075-nvidia-lowlatencyubuntu-upgrade-linux-image-5-15-0-1075-raspiubuntu-upgrade-linux-image-5-15-0-1076-intel-iotgubuntu-upgrade-linux-image-5-15-0-1077-intel-iotgubuntu-upgrade-linux-image-5-15-0-1077-kvmubuntu-upgrade-linux-image-5-15-0-1078-gkeubuntu-upgrade-linux-image-5-15-0-1078-oracleubuntu-upgrade-linux-image-5-15-0-1080-gcpubuntu-upgrade-linux-image-5-15-0-1080-gcp-fipsubuntu-upgrade-linux-image-5-15-0-1081-awsubuntu-upgrade-linux-image-5-15-0-1081-aws-fipsubuntu-upgrade-linux-image-5-15-0-1081-gcpubuntu-upgrade-linux-image-5-15-0-1081-realtimeubuntu-upgrade-linux-image-5-15-0-1085-azure-fipsubuntu-upgrade-linux-image-5-15-0-1086-azureubuntu-upgrade-linux-image-5-15-0-1086-azure-fdeubuntu-upgrade-linux-image-5-15-0-136-fipsubuntu-upgrade-linux-image-5-15-0-136-genericubuntu-upgrade-linux-image-5-15-0-136-generic-64kubuntu-upgrade-linux-image-5-15-0-136-generic-lpaeubuntu-upgrade-linux-image-5-15-0-136-lowlatencyubuntu-upgrade-linux-image-5-15-0-136-lowlatency-64kubuntu-upgrade-linux-image-5-4-0-1049-iotubuntu-upgrade-linux-image-5-4-0-1061-xilinx-zynqmpubuntu-upgrade-linux-image-5-4-0-1089-ibmubuntu-upgrade-linux-image-5-4-0-1090-ibmubuntu-upgrade-linux-image-5-4-0-1102-bluefieldubuntu-upgrade-linux-image-5-4-0-1117-fipsubuntu-upgrade-linux-image-5-4-0-1129-raspiubuntu-upgrade-linux-image-5-4-0-1130-kvmubuntu-upgrade-linux-image-5-4-0-1141-oracleubuntu-upgrade-linux-image-5-4-0-1144-awsubuntu-upgrade-linux-image-5-4-0-1144-aws-fipsubuntu-upgrade-linux-image-5-4-0-1146-gcpubuntu-upgrade-linux-image-5-4-0-1146-gcp-fipsubuntu-upgrade-linux-image-5-4-0-1147-gcpubuntu-upgrade-linux-image-5-4-0-1148-azureubuntu-upgrade-linux-image-5-4-0-1148-azure-fipsubuntu-upgrade-linux-image-5-4-0-212-genericubuntu-upgrade-linux-image-5-4-0-212-generic-lpaeubuntu-upgrade-linux-image-5-4-0-212-lowlatencyubuntu-upgrade-linux-image-6-11-0-1006-realtimeubuntu-upgrade-linux-image-6-11-0-1009-raspiubuntu-upgrade-linux-image-6-11-0-1010-awsubuntu-upgrade-linux-image-6-11-0-1010-azureubuntu-upgrade-linux-image-6-11-0-1010-azure-fdeubuntu-upgrade-linux-image-6-11-0-1010-gcpubuntu-upgrade-linux-image-6-11-0-1011-lowlatencyubuntu-upgrade-linux-image-6-11-0-1011-lowlatency-64kubuntu-upgrade-linux-image-6-11-0-1012-oracleubuntu-upgrade-linux-image-6-11-0-1012-oracle-64kubuntu-upgrade-linux-image-6-11-0-1016-oemubuntu-upgrade-linux-image-6-11-0-19-genericubuntu-upgrade-linux-image-6-11-0-19-generic-64kubuntu-upgrade-linux-image-6-8-0-1009-gkeopubuntu-upgrade-linux-image-6-8-0-1014-azure-nvidiaubuntu-upgrade-linux-image-6-8-0-1022-gkeubuntu-upgrade-linux-image-6-8-0-1023-ibmubuntu-upgrade-linux-image-6-8-0-1023-oracleubuntu-upgrade-linux-image-6-8-0-1023-oracle-64kubuntu-upgrade-linux-image-6-8-0-1025-nvidiaubuntu-upgrade-linux-image-6-8-0-1025-nvidia-64kubuntu-upgrade-linux-image-6-8-0-1025-nvidia-lowlatencyubuntu-upgrade-linux-image-6-8-0-1025-nvidia-lowlatency-64kubuntu-upgrade-linux-image-6-8-0-1025-oemubuntu-upgrade-linux-image-6-8-0-1026-awsubuntu-upgrade-linux-image-6-8-0-1026-azureubuntu-upgrade-linux-image-6-8-0-1026-azure-fdeubuntu-upgrade-linux-image-6-8-0-1027-awsubuntu-upgrade-linux-image-6-8-0-1027-gcpubuntu-upgrade-linux-image-6-8-0-1027-gcp-64kubuntu-upgrade-linux-image-6-8-0-1028-raspiubuntu-upgrade-linux-image-6-8-0-2023-raspi-realtimeubuntu-upgrade-linux-image-6-8-0-57-genericubuntu-upgrade-linux-image-6-8-0-57-generic-64kubuntu-upgrade-linux-image-6-8-0-57-lowlatencyubuntu-upgrade-linux-image-6-8-0-57-lowlatency-64kubuntu-upgrade-linux-image-6-8-1-1019-realtimeubuntu-upgrade-linux-image-awsubuntu-upgrade-linux-image-aws-fipsubuntu-upgrade-linux-image-aws-hweubuntu-upgrade-linux-image-aws-lts-18-04ubuntu-upgrade-linux-image-aws-lts-20-04ubuntu-upgrade-linux-image-aws-lts-22-04ubuntu-upgrade-linux-image-aws-lts-24-04ubuntu-upgrade-linux-image-azureubuntu-upgrade-linux-image-azure-cvmubuntu-upgrade-linux-image-azure-fdeubuntu-upgrade-linux-image-azure-fde-lts-22-04ubuntu-upgrade-linux-image-azure-fde-lts-24-04ubuntu-upgrade-linux-image-azure-fipsubuntu-upgrade-linux-image-azure-lts-18-04ubuntu-upgrade-linux-image-azure-lts-20-04ubuntu-upgrade-linux-image-azure-lts-22-04ubuntu-upgrade-linux-image-azure-lts-24-04ubuntu-upgrade-linux-image-azure-nvidiaubuntu-upgrade-linux-image-bluefieldubuntu-upgrade-linux-image-fipsubuntu-upgrade-linux-image-gcpubuntu-upgrade-linux-image-gcp-64kubuntu-upgrade-linux-image-gcp-64k-lts-24-04ubuntu-upgrade-linux-image-gcp-fipsubuntu-upgrade-linux-image-gcp-lts-18-04ubuntu-upgrade-linux-image-gcp-lts-20-04ubuntu-upgrade-linux-image-gcp-lts-22-04ubuntu-upgrade-linux-image-gcp-lts-24-04ubuntu-upgrade-linux-image-genericubuntu-upgrade-linux-image-generic-64kubuntu-upgrade-linux-image-generic-64k-hwe-20-04ubuntu-upgrade-linux-image-generic-64k-hwe-22-04ubuntu-upgrade-linux-image-generic-64k-hwe-24-04ubuntu-upgrade-linux-image-generic-hwe-16-04ubuntu-upgrade-linux-image-generic-hwe-18-04ubuntu-upgrade-linux-image-generic-hwe-20-04ubuntu-upgrade-linux-image-generic-hwe-22-04ubuntu-upgrade-linux-image-generic-hwe-24-04ubuntu-upgrade-linux-image-generic-lpaeubuntu-upgrade-linux-image-generic-lpae-hwe-20-04ubuntu-upgrade-linux-image-generic-lts-trustyubuntu-upgrade-linux-image-generic-lts-xenialubuntu-upgrade-linux-image-gkeubuntu-upgrade-linux-image-gke-5-15ubuntu-upgrade-linux-image-gkeopubuntu-upgrade-linux-image-gkeop-5-15ubuntu-upgrade-linux-image-gkeop-6-8ubuntu-upgrade-linux-image-ibmubuntu-upgrade-linux-image-ibm-classicubuntu-upgrade-linux-image-ibm-lts-20-04ubuntu-upgrade-linux-image-ibm-lts-24-04ubuntu-upgrade-linux-image-intelubuntu-upgrade-linux-image-intel-iot-realtimeubuntu-upgrade-linux-image-intel-iotgubuntu-upgrade-linux-image-kvmubuntu-upgrade-linux-image-lowlatencyubuntu-upgrade-linux-image-lowlatency-64kubuntu-upgrade-linux-image-lowlatency-64k-hwe-20-04ubuntu-upgrade-linux-image-lowlatency-64k-hwe-22-04ubuntu-upgrade-linux-image-lowlatency-64k-hwe-24-04ubuntu-upgrade-linux-image-lowlatency-hwe-16-04ubuntu-upgrade-linux-image-lowlatency-hwe-18-04ubuntu-upgrade-linux-image-lowlatency-hwe-20-04ubuntu-upgrade-linux-image-lowlatency-hwe-22-04ubuntu-upgrade-linux-image-lowlatency-hwe-24-04ubuntu-upgrade-linux-image-lowlatency-lts-xenialubuntu-upgrade-linux-image-nvidiaubuntu-upgrade-linux-image-nvidia-6-8ubuntu-upgrade-linux-image-nvidia-64kubuntu-upgrade-linux-image-nvidia-64k-6-8ubuntu-upgrade-linux-image-nvidia-64k-hwe-22-04ubuntu-upgrade-linux-image-nvidia-hwe-22-04ubuntu-upgrade-linux-image-nvidia-lowlatencyubuntu-upgrade-linux-image-nvidia-lowlatency-64kubuntu-upgrade-linux-image-nvidia-tegraubuntu-upgrade-linux-image-nvidia-tegra-igxubuntu-upgrade-linux-image-nvidia-tegra-igx-rtubuntu-upgrade-linux-image-nvidia-tegra-rtubuntu-upgrade-linux-image-oemubuntu-upgrade-linux-image-oem-20-04ubuntu-upgrade-linux-image-oem-20-04bubuntu-upgrade-linux-image-oem-20-04cubuntu-upgrade-linux-image-oem-20-04dubuntu-upgrade-linux-image-oem-22-04ubuntu-upgrade-linux-image-oem-22-04aubuntu-upgrade-linux-image-oem-22-04bubuntu-upgrade-linux-image-oem-22-04cubuntu-upgrade-linux-image-oem-22-04dubuntu-upgrade-linux-image-oem-24-04ubuntu-upgrade-linux-image-oem-24-04aubuntu-upgrade-linux-image-oem-24-04bubuntu-upgrade-linux-image-oem-osp1ubuntu-upgrade-linux-image-oracleubuntu-upgrade-linux-image-oracle-64kubuntu-upgrade-linux-image-oracle-64k-lts-24-04ubuntu-upgrade-linux-image-oracle-lts-18-04ubuntu-upgrade-linux-image-oracle-lts-20-04ubuntu-upgrade-linux-image-oracle-lts-22-04ubuntu-upgrade-linux-image-oracle-lts-24-04ubuntu-upgrade-linux-image-raspiubuntu-upgrade-linux-image-raspi-hwe-18-04ubuntu-upgrade-linux-image-raspi-nolpaeubuntu-upgrade-linux-image-raspi-realtimeubuntu-upgrade-linux-image-raspi2ubuntu-upgrade-linux-image-realtimeubuntu-upgrade-linux-image-realtime-hwe-24-04ubuntu-upgrade-linux-image-serverubuntu-upgrade-linux-image-snapdragon-hwe-18-04ubuntu-upgrade-linux-image-virtualubuntu-upgrade-linux-image-virtual-hwe-16-04ubuntu-upgrade-linux-image-virtual-hwe-18-04ubuntu-upgrade-linux-image-virtual-hwe-20-04ubuntu-upgrade-linux-image-virtual-hwe-22-04ubuntu-upgrade-linux-image-virtual-hwe-24-04ubuntu-upgrade-linux-image-virtual-lts-xenialubuntu-upgrade-linux-image-xilinx-zynqmp

References

    Title
    NEW

    Explore Exposure Command

    Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.