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 perf-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-livepatch-5.15.156-102.160Upgrade kernel-toolsUpgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade python-perfUpgrade kernel-develUpgrade kernel-livepatch-5.10.215-203.850Upgrade perfUpgrade kernel-tools-develUpgrade kernel-tools-debuginfoUpgrade bpftoolUpgrade kernel-headersUpgrade python-perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel | Aug 14, 2024 | May 1, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-tools-debuginfoUpgrade perf-debuginfoUpgrade python3-perfUpgrade bpftoolUpgrade python3-perf-debuginfoUpgrade kernel-tools-develUpgrade perfUpgrade kernel-toolsUpgrade kernel-develUpgrade kernel-modules-extraUpgrade kernel-libbpfUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-libbpf-staticUpgrade kernelUpgrade kernel-headersUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-6.1.84-99.169Upgrade kernel-modules-extra-commonUpgrade kernel-debuginfoUpgrade kernel-libbpf-develUpgrade bpftool-debuginfo | 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 | — | Upgrade kernelUpgrade kernel-rtNo solution exists | Dec 5, 2024 | May 1, 2024 |
| Suse | — | Upgrade kernel-rt_debug-vdsoUpgrade ocfs2-kmp-rtUpgrade reiserfs-kmp-defaultUpgrade kernel-default-optionalUpgrade kernel-kvmsmallUpgrade ocfs2-kmp-azureUpgrade kernel-docsUpgrade cluster-md-kmp-defaultUpgrade kernel-default-base-rebuildUpgrade kernel-rt-livepatchUpgrade dtb-nvidiaUpgrade dlm-kmp-defaultUpgrade kernel-default-baseUpgrade dtb-armUpgrade kernel-macrosUpgrade kernel-obs-qaUpgrade dtb-xilinxUpgrade dtb-amlogicUpgrade kselftests-kmp-defaultUpgrade kernel-azure-livepatch-develUpgrade dlm-kmp-azureUpgrade kernel-defaultUpgrade kernel-default-extraUpgrade cluster-md-kmp-rtUpgrade kernel-rtUpgrade dtb-mediatekUpgrade kselftests-kmp-rtUpgrade reiserfs-kmp-azureUpgrade kernel-rt-develUpgrade kernel-debug-livepatch-develUpgrade dtb-rockchipUpgrade kernel-default-livepatch-develUpgrade kernel-devel-rtUpgrade dtb-apmUpgrade kernel-symsUpgrade kernel-syms-rtUpgrade dtb-qcomUpgrade kernel-64kb-develUpgrade dlm-kmp-rtUpgrade kernel-develUpgrade cluster-md-kmp-64kbUpgrade kernel-debugUpgrade kernel-64kb-optionalUpgrade kernel-zfcpdumpUpgrade kernel-source-rtUpgrade kernel-sourceUpgrade gfs2-kmp-azureUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-debug-develUpgrade kernel-azure-extraUpgrade kselftests-kmp-64kbUpgrade kernel-rt_debug-develUpgrade kernel-rt_debugUpgrade kernel-kvmsmall-vdsoUpgrade kernel-debug-vdsoUpgrade kernel-azure-develUpgrade dtb-exynosUpgrade ocfs2-kmp-64kbUpgrade kernel-rt-extraUpgrade dtb-appleUpgrade dtb-alteraUpgrade kernel-rt-livepatch-develUpgrade kernel-source-azureUpgrade reiserfs-kmp-64kbUpgrade kernel-rt-vdsoUpgrade kernel-64kbUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-source-vanillaUpgrade kernel-devel-azureUpgrade kernel-azure-vdsoUpgrade kernel-default-vdsoUpgrade kernel-default-develUpgrade dtb-sprdUpgrade dtb-socionextUpgrade dtb-marvellUpgrade dtb-amazonUpgrade dtb-allwinnerUpgrade kernel-rt-optionalUpgrade kernel-default-livepatchUpgrade kernel-64kb-extraUpgrade kernel-syms-azureUpgrade kselftests-kmp-azureUpgrade kernel-kvmsmall-develUpgrade gfs2-kmp-rtUpgrade dtb-broadcomUpgrade kernel-azure-optionalUpgrade kernel-azureUpgrade kernel-64kb-livepatch-develUpgrade gfs2-kmp-64kbUpgrade dtb-renesasUpgrade dtb-amdUpgrade cluster-md-kmp-azureUpgrade reiserfs-kmp-rtUpgrade ocfs2-kmp-defaultUpgrade kernel-obs-buildUpgrade kernel-docs-htmlUpgrade dtb-hisiliconUpgrade dtb-freescaleUpgrade dtb-caviumUpgrade dtb-lgUpgrade gfs2-kmp-defaultUpgrade dlm-kmp-64kb | May 15, 2024 | May 1, 2024 |
| Ubuntu | — | Upgrade linux-image-gkeopUpgrade linux-image-6.8.0-1006-oracleUpgrade linux-image-ibmUpgrade linux-image-oem-20.04bUpgrade linux-image-oracleUpgrade linux-image-5.15.0-1060-intel-iotgUpgrade linux-image-genericUpgrade linux-image-6.8.0-1009-awsUpgrade linux-image-5.15.0-1048-gkeopUpgrade linux-image-5.15.0-116-genericUpgrade linux-image-raspi-nolpaeUpgrade linux-image-5.15.0-116-generic-64kUpgrade linux-image-5.15.0-1068-azureUpgrade linux-image-6.8.0-1006-oemUpgrade linux-image-6.8.0-1005-raspiUpgrade linux-image-5.15.0-116-lowlatency-64kUpgrade linux-image-6.8.0-1008-azureUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-oem-24.04Upgrade linux-image-nvidiaUpgrade linux-image-oem-20.04dUpgrade linux-image-5.15.0-116-generic-lpaeUpgrade linux-image-generic-lpaeUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-6.8.0-1004-gkeUpgrade linux-image-lowlatencyUpgrade linux-image-aws-lts-22.04Upgrade linux-image-gke-5.15Upgrade linux-image-gcpUpgrade linux-image-virtualUpgrade linux-image-ibm-classicUpgrade linux-image-5.15.0-1062-gkeUpgrade linux-image-6.8.0-1006-oracle-64kUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-oem-20.04Upgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-1064-gcpUpgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1062-kvmUpgrade linux-image-5.15.0-1035-xilinx-zynqmpUpgrade linux-image-intel-iotgUpgrade linux-image-6.8.0-35-genericUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-generic-64kUpgrade linux-image-awsUpgrade linux-image-6.8.0-1006-ibmUpgrade linux-image-6.8.0-35-generic-64kUpgrade linux-image-azure-fdeUpgrade linux-image-5.15.0-1065-gcpUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.15.0-1063-oracleUpgrade linux-image-gkeUpgrade linux-image-5.15.0-1058-ibmUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-oem-20.04cUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.8.0-35-lowlatencyUpgrade linux-image-5.15.0-1060-nvidiaUpgrade linux-image-6.8.0-1008-gcpUpgrade linux-image-azure-cvmUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.8.0-35-lowlatency-64kUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.15.0-116-lowlatencyUpgrade linux-image-6.8.0-1008-azure-fdeUpgrade linux-image-5.15.0-1065-awsUpgrade linux-image-oem-24.04aUpgrade linux-image-5.15.0-1060-nvidia-lowlatencyUpgrade linux-image-kvmUpgrade linux-image-intelUpgrade linux-image-azureUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-raspiUpgrade linux-image-5.15.0-1068-azure-fdeUpgrade linux-image-5.15.0-1058-raspi | 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