In the Linux kernel, the following vulnerability has been resolved:
wireguard: netlink: check for dangling peer via is_dead instead of empty list
If all peers are removed via wg_peer_remove_all(), rather than setting peer_list to empty, the peer is added to a temporary list with a head on the stack of wg_peer_remove_all(). If a netlink dump is resumed and the cursored peer is one that has been removed via wg_peer_remove_all(), it will iterate from that peer and then attempt to dump freed peers.
Fix this by instead checking peer->is_dead, which was explictly created for this purpose. Also move up the device_update_lock lockdep assertion, since reading is_dead relies on that.
It can be reproduced by a small script like:
echo "Setting config..." ip link add dev wg0 type wireguard wg setconf wg0 /big-config ( while true; do echo "Showing config..." wg showconf wg0 > /dev/null done ) & sleep 4 wg setconf wg0 <(printf "[Peer]\nPublicKey=$(wg genkey)\n")
Resulting in:
BUG: KASAN: slab-use-after-free in __lock_acquire+0x182a/0x1b20 Read of size 8 at addr ffff88811956ec70 by task wg/59 CPU: 2 PID: 59 Comm: wg Not tainted 6.8.0-rc2-debug+ #5 Call Trace: <TASK> dump_stack_lvl+0x47/0x70 print_address_description.constprop.0+0x2c/0x380 print_report+0xab/0x250 kasan_report+0xba/0xf0 __lock_acquire+0x182a/0x1b20 lock_acquire+0x191/0x4b0 down_read+0x80/0x440 get_peer+0x140/0xcb0 wg_get_device_dump+0x471/0x1130
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-livepatch-5.15.156-102.160Upgrade bpftool-debuginfoUpgrade kernel-toolsUpgrade kernel-debuginfo-common-aarch64Upgrade perf-debuginfoUpgrade python-perfUpgrade kernel-debuginfo-common-x86_64Upgrade bpftoolUpgrade python-perf-debuginfoUpgrade perfUpgrade kernelUpgrade kernel-debuginfoUpgrade kernel-headersUpgrade kernel-develUpgrade kernel-tools-develUpgrade kernel-livepatch-5.10.215-203.850Upgrade kernel-tools-debuginfo | Aug 14, 2024 | May 1, 2024 |
| Amazon_linux_2023 | — | Upgrade bpftool-debuginfoUpgrade kernel-libbpf-develUpgrade kernelUpgrade kernel-livepatch-6.1.84-99.169Upgrade kernel-headersUpgrade kernel-modules-extra-commonUpgrade kernel-libbpf-staticUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-debuginfoUpgrade kernel-tools-develUpgrade kernel-libbpfUpgrade kernel-develUpgrade kernel-toolsUpgrade perfUpgrade kernel-modules-extraUpgrade bpftoolUpgrade kernel-debuginfo-common-aarch64Upgrade perf-debuginfoUpgrade kernel-tools-debuginfoUpgrade python3-perf-debuginfoUpgrade python3-perf | Feb 17, 2025 | May 1, 2024 |
| Debian | — | Upgrade linux | May 8, 2024 | May 1, 2024 |
| Oracle_linux | — | Upgrade kernel-uek | Nov 21, 2024 | May 1, 2024 |
| Redhat_linux | — | No solution existsUpgrade kernel-rtUpgrade kernel | Dec 5, 2024 | May 1, 2024 |
| Suse | — | Upgrade kernel-zfcpdumpUpgrade kernel-default-develUpgrade kernel-sourceUpgrade kernel-default-vdsoUpgrade kernel-rt_debugUpgrade kernel-rt_debug-develUpgrade kernel-source-rtUpgrade kernel-kvmsmall-develUpgrade kernel-azure-extraUpgrade kernel-debug-develUpgrade kernel-64kb-optionalUpgrade kernel-kvmsmall-vdsoUpgrade gfs2-kmp-azureUpgrade gfs2-kmp-defaultUpgrade kernel-kvmsmall-livepatch-develUpgrade kselftests-kmp-azureUpgrade kernel-azure-vdsoUpgrade kselftests-kmp-64kbUpgrade dlm-kmp-64kbUpgrade dtb-socionextUpgrade kernel-azure-develUpgrade ocfs2-kmp-64kbUpgrade dtb-exynosUpgrade kernel-debug-vdsoUpgrade dtb-alteraUpgrade dtb-appleUpgrade kernel-rt-extraUpgrade kernel-source-azureUpgrade kernel-rt-livepatch-develUpgrade kernel-azure-optionalUpgrade kernel-docs-htmlUpgrade gfs2-kmp-64kbUpgrade kernel-obs-buildUpgrade cluster-md-kmp-azureUpgrade dtb-amdUpgrade dtb-renesasUpgrade kernel-64kb-livepatch-develUpgrade dtb-sprdUpgrade kernel-64kbUpgrade ocfs2-kmp-defaultUpgrade reiserfs-kmp-rtUpgrade kernel-azureUpgrade kernel-64kb-extraUpgrade kernel-rt-optionalUpgrade dtb-amazonUpgrade kernel-source-vanillaUpgrade kernel-default-livepatchUpgrade kernel-syms-azureUpgrade dtb-allwinnerUpgrade reiserfs-kmp-64kbUpgrade dtb-freescaleUpgrade dtb-lgUpgrade dtb-hisiliconUpgrade dtb-caviumUpgrade dtb-broadcomUpgrade gfs2-kmp-rtUpgrade dtb-marvellUpgrade kernel-rt-vdsoUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-devel-azureUpgrade dtb-rockchipUpgrade kernel-docsUpgrade kernel-syms-rtUpgrade kernel-rt-develUpgrade kernel-rtUpgrade kernel-default-optionalUpgrade kernel-64kb-develUpgrade dtb-qcomUpgrade reiserfs-kmp-defaultUpgrade kernel-develUpgrade kernel-symsUpgrade kernel-debug-livepatch-develUpgrade cluster-md-kmp-64kbUpgrade kernel-devel-rtUpgrade kernel-default-baseUpgrade dtb-apmUpgrade dlm-kmp-rtUpgrade kernel-default-livepatch-develUpgrade dtb-mediatekUpgrade kernel-rt-livepatchUpgrade kernel-default-base-rebuildUpgrade dtb-nvidiaUpgrade dtb-armUpgrade cluster-md-kmp-defaultUpgrade kselftests-kmp-defaultUpgrade kernel-default-extraUpgrade kernel-defaultUpgrade cluster-md-kmp-rtUpgrade reiserfs-kmp-azureUpgrade kselftests-kmp-rtUpgrade dlm-kmp-defaultUpgrade dtb-xilinxUpgrade kernel-obs-qaUpgrade dlm-kmp-azureUpgrade kernel-debugUpgrade kernel-macrosUpgrade kernel-azure-livepatch-develUpgrade dtb-amlogicUpgrade ocfs2-kmp-rtUpgrade kernel-rt_debug-vdsoUpgrade ocfs2-kmp-azureUpgrade kernel-kvmsmall | May 15, 2024 | May 1, 2024 |
| Ubuntu | — | Upgrade linux-image-5.15.0-1062-gkeUpgrade linux-image-gcpUpgrade linux-image-lowlatency-64kUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1006-oemUpgrade linux-image-virtualUpgrade linux-image-5.15.0-1048-gkeopUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-gke-5.15Upgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-1006-oracleUpgrade linux-image-ibm-classicUpgrade linux-image-6.8.0-1005-raspiUpgrade linux-image-oem-24.04Upgrade linux-image-5.15.0-116-generic-64kUpgrade linux-image-6.8.0-1006-oracle-64kUpgrade linux-image-generic-lpaeUpgrade linux-image-oem-20.04dUpgrade linux-image-azure-lts-22.04Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-6.8.0-1004-gkeUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-oracleUpgrade linux-image-nvidiaUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-ibmUpgrade linux-image-gkeopUpgrade linux-image-genericUpgrade linux-image-6.8.0-1009-awsUpgrade linux-image-5.15.0-1060-intel-iotgUpgrade linux-image-oem-20.04bUpgrade linux-image-6.8.0-1008-azureUpgrade linux-image-5.15.0-116-genericUpgrade linux-image-5.15.0-1068-azureUpgrade linux-image-5.15.0-116-lowlatency-64kUpgrade linux-image-5.15.0-116-generic-lpaeUpgrade linux-image-raspi-nolpaeUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-generic-64kUpgrade linux-image-6.8.0-35-lowlatency-64kUpgrade linux-image-5.15.0-1064-gcpUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-gkeUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-oem-20.04cUpgrade linux-image-5.15.0-1065-gcpUpgrade linux-image-5.15.0-1035-xilinx-zynqmpUpgrade linux-image-5.15.0-1068-azure-fdeUpgrade linux-image-azure-fdeUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-awsUpgrade linux-image-5.15.0-1060-nvidiaUpgrade linux-image-intel-iotgUpgrade linux-image-6.8.0-35-genericUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.8.0-1006-ibmUpgrade linux-image-6.8.0-35-generic-64kUpgrade linux-image-6.8.0-1008-gcpUpgrade linux-image-intelUpgrade linux-image-5.15.0-116-lowlatencyUpgrade linux-image-oem-24.04aUpgrade linux-image-5.15.0-1065-awsUpgrade linux-image-6.8.0-35-lowlatencyUpgrade linux-image-azure-cvmUpgrade linux-image-6.8.0-1008-azure-fdeUpgrade linux-image-5.15.0-1060-nvidia-lowlatencyUpgrade linux-image-5.15.0-1062-kvmUpgrade linux-image-raspiUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-kvmUpgrade linux-image-azureUpgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1058-raspiUpgrade linux-image-oem-20.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-1063-oracleUpgrade linux-image-5.15.0-1058-ibm | Jul 1, 2024 | May 1, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | May 1, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub