In the Linux kernel, the following vulnerability has been resolved:
firmware_loader: Block path traversal
Most firmware names are hardcoded strings, or are constructed from fairly constrained format strings where the dynamic parts are just some hex numbers or such.
However, there are a couple codepaths in the kernel where firmware file names contain string components that are passed through from a device or semi-privileged userspace; the ones I could find (not counting interfaces that require root privileges) are:
- lpfc_sli4_request_firmware_update() seems to construct the firmware filename from "ModelName", a string that was previously parsed out of some descriptor ("Vital Product Data") in lpfc_fill_vpd() - nfp_net_fw_find() seems to construct a firmware filename from a model name coming from nfp_hwinfo_lookup(pf->hwinfo, "nffw.partno"), which I think parses some descriptor that was read from the device. (But this case likely isn't exploitable because the format string looks like "netronome/nic_%s", and there shouldn't be any *folders* starting with "netronome/nic_". The previous case was different because there, the "%s" is *at the start* of the format string.) - module_flash_fw_schedule() is reachable from the ETHTOOL_MSG_MODULE_FW_FLASH_ACT netlink command, which is marked as GENL_UNS_ADMIN_PERM (meaning CAP_NET_ADMIN inside a user namespace is enough to pass the privilege check), and takes a userspace-provided firmware name. (But I think to reach this case, you need to have CAP_NET_ADMIN over a network namespace that a special kind of ethernet device is mapped into, so I think this is not a viable attack path in practice.)
Fix it by rejecting any firmware names containing ".." path components.
For what it's worth, I went looking and haven't found any USB device drivers that use the firmware loader dangerously.
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.168-114.166Upgrade bpftoolUpgrade kernel-toolsUpgrade kernel-debuginfo-common-x86_64Upgrade kernelUpgrade kernel-livepatch-5.10.227-219.884Upgrade kernel-livepatch-4.14.355-275.582Upgrade kernel-tools-develUpgrade kernel-develUpgrade perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-debuginfoUpgrade python-perf-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-headersUpgrade python-perfUpgrade kernel-debuginfo-common-aarch64Upgrade perf | Jan 22, 2025 | Oct 21, 2024 |
| Amazon_linux | — | Upgrade kernel | Feb 6, 2025 | Oct 21, 2024 |
| Amazon_linux_2023 | — | Upgrade perf-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-headersUpgrade kernel-libbpf-develUpgrade kernelUpgrade kernel-modules-extra-commonUpgrade kernel-libbpf-staticUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-libbpfUpgrade kernel-tools-develUpgrade kernel-modules-extraUpgrade kernel-toolsUpgrade kernel-livepatch-6.1.115-126.197Upgrade kernel-livepatch-6.1.112-124.190Upgrade perfUpgrade kernel-tools-debuginfoUpgrade kernel-develUpgrade kernel-debuginfoUpgrade bpftoolUpgrade python3-perfUpgrade bpftool-debuginfoUpgrade python3-perf-debuginfo | Feb 17, 2025 | Oct 21, 2024 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Nov 11, 2024 | Oct 21, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernelUpgrade python3-perfUpgrade kernel-tools | Jan 14, 2025 | Oct 21, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade python3-perfUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernelUpgrade kernel-toolsUpgrade bpftool | Feb 11, 2025 | Oct 21, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-toolsUpgrade bpftoolUpgrade kernel-tools-libsUpgrade python3-perfUpgrade kernelUpgrade kernel-abi-stablelists | Feb 11, 2025 | Oct 21, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernel-toolsUpgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel | Jan 15, 2025 | Oct 21, 2024 |
| Oracle_linux | — | Upgrade kernel-uek | Dec 17, 2024 | Oct 21, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Oct 21, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1024-gcp-64kUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-azure-lts-20.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-oracle-64kUpgrade linux-image-6.8.0-1019-raspiUpgrade linux-image-5.4.0-1116-fipsUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-6.8.0-1006-gkeopUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-6.8.0-1020-oracle-64kUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-5.15.0-127-lowlatencyUpgrade linux-image-virtualUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-fipsUpgrade linux-image-5.15.0-1068-nvidia-lowlatencyUpgrade linux-image-nvidia-64kUpgrade linux-image-azure-cvmUpgrade linux-image-5.4.0-1145-azureUpgrade linux-image-oem-osp1Upgrade linux-image-5.4.0-1048-iotUpgrade linux-image-6.8.0-57-genericUpgrade linux-image-6.8.0-1022-nvidia-64kUpgrade linux-image-5.4.0-1127-kvmUpgrade linux-image-gcpUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.11.0-1010-lowlatency-64kUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.11.0-18-genericUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-oem-22.04bUpgrade linux-image-raspi-nolpaeUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-oem-20.04dUpgrade linux-image-oem-24.04bUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-54-lowlatencyUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-5.15.0-1066-raspiUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-5.15.0-1072-gcpUpgrade linux-image-bluefieldUpgrade linux-image-realtimeUpgrade linux-image-5.15.0-1066-ibmUpgrade linux-image-oem-24.04aUpgrade linux-image-5.15.0-1056-gkeopUpgrade linux-image-oem-24.04Upgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-intelUpgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-57-generic-64kUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-raspi2Upgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-6.8.0-1024-oemUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.11.0-1009-gcpUpgrade linux-image-kvmUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-oem-20.04Upgrade linux-image-raspi-hwe-18.04Upgrade linux-image-6.11.0-18-generic-64kUpgrade linux-image-6.8.0-1022-nvidia-lowlatencyUpgrade linux-image-6.8.0-1022-nvidiaUpgrade linux-image-intel-iotgUpgrade linux-image-6.11.0-1005-realtimeUpgrade linux-image-oemUpgrade linux-image-awsUpgrade linux-image-gkeUpgrade linux-image-oracleUpgrade linux-image-gcp-64kUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-ibmUpgrade linux-image-6.8.0-1024-gcpUpgrade linux-image-6.8.0-1022-ibmUpgrade linux-image-5.4.0-208-genericUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-54-lowlatency-64kUpgrade linux-image-6.11.0-1009-azureUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.4.0-208-lowlatencyUpgrade linux-image-6.8.0-54-genericUpgrade linux-image-5.15.0-127-generic-lpaeUpgrade linux-image-5.15.0-1068-nvidiaUpgrade linux-image-oem-22.04dUpgrade linux-image-5.15.0-1070-kvmUpgrade linux-image-5.4.0-1138-oracleUpgrade linux-image-nvidiaUpgrade linux-image-6.8.0-1023-awsUpgrade linux-image-raspiUpgrade linux-image-aws-lts-22.04Upgrade linux-image-6.11.0-1011-oracle-64kUpgrade linux-image-5.15.0-1078-azureUpgrade linux-image-5.4.0-1142-awsUpgrade linux-image-azure-lts-22.04Upgrade linux-image-5.15.0-1039-xilinx-zynqmpUpgrade linux-image-lowlatency-64kUpgrade linux-image-aws-lts-20.04Upgrade linux-image-6.8.0-54-generic-64kUpgrade linux-image-azureUpgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-aws-lts-24.04Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-azure-nvidiaUpgrade linux-image-oem-22.04aUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-oem-20.04bUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-6.8.0-1019-gkeUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-5.15.0-127-genericUpgrade linux-image-5.15.0-127-generic-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-lowlatencyUpgrade linux-image-oem-20.04cUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-5.4.0-208-generic-lpaeUpgrade linux-image-azure-lts-24.04Upgrade linux-image-gkeop-6.8Upgrade linux-image-5.4.0-1143-gcpUpgrade linux-image-6.11.0-1008-raspiUpgrade linux-image-gke-5.15Upgrade linux-image-5.15.0-1071-oracleUpgrade linux-image-5.4.0-1086-ibmUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-6.11.0-1015-oemUpgrade linux-image-oem-22.04cUpgrade linux-image-genericUpgrade linux-image-6.11.0-1010-lowlatencyUpgrade linux-image-6.11.0-1011-oracleUpgrade linux-image-6.11.0-1009-azure-fdeUpgrade linux-image-ibm-classicUpgrade linux-image-gkeopUpgrade linux-image-6.8.0-1025-azure-fdeUpgrade linux-image-6.8.0-1025-azureUpgrade linux-image-5.15.0-1070-gkeUpgrade linux-image-5.4.0-1099-bluefieldUpgrade linux-image-oem-22.04Upgrade linux-image-generic-64kUpgrade linux-image-5.15.0-1071-intel-iotgUpgrade linux-image-5.15.0-127-lowlatency-64kUpgrade linux-image-6.8.0-1020-oracleUpgrade linux-image-5.4.0-1058-xilinx-zynqmpUpgrade linux-image-6.8.0-1022-nvidia-lowlatency-64kUpgrade linux-image-6.11.0-1009-awsUpgrade linux-image-5.4.0-1140-awsUpgrade linux-image-ibm-lts-20.04Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-5.15.0-1073-aws | Dec 18, 2024 | Oct 21, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 13, 2025 | Oct 21, 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