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-headersUpgrade kernel-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-develUpgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade python-perf-debuginfoUpgrade python-perfUpgrade perfUpgrade perf-debuginfoUpgrade kernel-livepatch-5.15.168-114.166Upgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-develUpgrade kernel-livepatch-4.14.355-275.582Upgrade kernelUpgrade kernel-livepatch-5.10.227-219.884Upgrade bpftoolUpgrade kernel-tools | Jan 22, 2025 | Oct 21, 2024 |
| Amazon_linux | — | Upgrade kernel | Feb 6, 2025 | Oct 21, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-headersUpgrade kernel-modules-extra-commonUpgrade perf-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-libbpf-develUpgrade kernelUpgrade kernel-tools-develUpgrade kernel-libbpf-staticUpgrade kernel-libbpfUpgrade kernel-livepatch-6.1.112-124.190Upgrade kernel-modules-extraUpgrade bpftoolUpgrade kernel-tools-debuginfoUpgrade kernel-develUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-toolsUpgrade kernel-livepatch-6.1.115-126.197Upgrade python3-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-debuginfoUpgrade python3-perfUpgrade perf | Feb 17, 2025 | Oct 21, 2024 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Nov 11, 2024 | Oct 21, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-tools-libsUpgrade kernelUpgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade python3-perf | Jan 14, 2025 | Oct 21, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernelUpgrade python3-perfUpgrade bpftoolUpgrade kernel-tools | Feb 11, 2025 | Oct 21, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-tools-libsUpgrade kernel-toolsUpgrade bpftoolUpgrade kernel-abi-stablelistsUpgrade kernelUpgrade python3-perf | Feb 11, 2025 | Oct 21, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernel-tools-libsUpgrade python3-perfUpgrade kernelUpgrade kernel-tools | 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-azure-fdeUpgrade linux-image-6.8.0-1022-nvidia-lowlatency-64kUpgrade linux-image-aws-lts-20.04Upgrade linux-image-6.8.0-54-genericUpgrade linux-image-6.8.0-54-lowlatency-64kUpgrade linux-image-aws-lts-24.04Upgrade linux-image-6.8.0-1019-gkeUpgrade linux-image-6.8.0-54-generic-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-azureUpgrade linux-image-gcp-64kUpgrade linux-image-5.4.0-1140-awsUpgrade linux-image-6.11.0-1008-raspiUpgrade linux-image-6.8.0-1025-azureUpgrade linux-image-azure-lts-22.04Upgrade linux-image-ibm-classicUpgrade linux-image-gkeopUpgrade linux-image-5.15.0-1039-xilinx-zynqmpUpgrade linux-image-ibmUpgrade linux-image-5.15.0-1070-gkeUpgrade linux-image-6.11.0-1010-lowlatencyUpgrade linux-image-6.8.0-1022-ibmUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-5.15.0-127-generic-64kUpgrade linux-image-6.11.0-1009-awsUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-genericUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-gke-5.15Upgrade linux-image-5.15.0-127-genericUpgrade linux-image-5.15.0-1073-awsUpgrade linux-image-6.8.0-1025-azure-fdeUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-azure-nvidiaUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-5.15.0-127-generic-lpaeUpgrade linux-image-oem-22.04Upgrade linux-image-5.4.0-1058-xilinx-zynqmpUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-oem-20.04cUpgrade linux-image-generic-64kUpgrade linux-image-lowlatencyUpgrade linux-image-6.11.0-1011-oracle-64kUpgrade linux-image-5.4.0-1142-awsUpgrade linux-image-5.4.0-208-lowlatencyUpgrade linux-image-oem-22.04cUpgrade linux-image-nvidia-6.8Upgrade linux-image-5.4.0-1086-ibmUpgrade linux-image-5.15.0-1071-oracleUpgrade linux-image-6.11.0-1011-oracleUpgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-6.8.0-1024-gcpUpgrade linux-image-6.11.0-1009-azureUpgrade linux-image-nvidiaUpgrade linux-image-5.15.0-127-lowlatency-64kUpgrade linux-image-6.11.0-1015-oemUpgrade linux-image-6.11.0-1009-azure-fdeUpgrade linux-image-5.4.0-1143-gcpUpgrade linux-image-5.4.0-208-generic-lpaeUpgrade linux-image-5.4.0-1138-oracleUpgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-1023-awsUpgrade linux-image-5.15.0-1070-kvmUpgrade linux-image-5.15.0-1068-nvidiaUpgrade linux-image-azure-lts-24.04Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-oem-22.04dUpgrade linux-image-raspiUpgrade linux-image-gkeop-6.8Upgrade linux-image-5.4.0-1099-bluefieldUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-oem-22.04aUpgrade linux-image-oem-20.04bUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-5.4.0-208-genericUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-6.8.0-1020-oracleUpgrade linux-image-5.15.0-1078-azureUpgrade linux-image-5.15.0-1071-intel-iotgUpgrade linux-image-5.15.0-1072-gcpUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-oem-24.04Upgrade linux-image-oracle-lts-20.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-5.15.0-1066-raspiUpgrade linux-image-5.15.0-1066-ibmUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-6.8.0-1022-nvidia-64kUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-oracle-64kUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-oem-22.04bUpgrade linux-image-6.8.0-1020-oracle-64kUpgrade linux-image-gkeop-5.15Upgrade linux-image-5.4.0-1048-iotUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-virtual-hwe-18.04Upgrade linux-image-5.15.0-1068-nvidia-lowlatencyUpgrade linux-image-6.8.0-1006-gkeopUpgrade linux-image-oem-osp1Upgrade linux-image-6.8.0-1022-nvidiaUpgrade linux-image-6.11.0-1005-realtimeUpgrade linux-image-intel-iotgUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-gkeUpgrade linux-image-6.8.0-1022-nvidia-lowlatencyUpgrade linux-image-awsUpgrade linux-image-nvidia-64kUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-oemUpgrade linux-image-azure-cvmUpgrade linux-image-6.11.0-1010-lowlatency-64kUpgrade linux-image-5.15.0-127-lowlatencyUpgrade linux-image-5.4.0-1145-azureUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.4.0-1116-fipsUpgrade linux-image-oem-20.04dUpgrade linux-image-raspi-nolpaeUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-5.4.0-1127-kvmUpgrade linux-image-bluefieldUpgrade linux-image-gcpUpgrade linux-image-6.11.0-18-genericUpgrade linux-image-6.8.0-54-lowlatencyUpgrade linux-image-6.8.0-57-genericUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-1019-raspiUpgrade linux-image-oem-24.04aUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-raspi-hwe-18.04Upgrade linux-image-oem-20.04Upgrade linux-image-kvmUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.8.0-1024-oemUpgrade linux-image-6.11.0-1009-gcpUpgrade linux-image-6.8.0-57-generic-64kUpgrade linux-image-virtualUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-fipsUpgrade linux-image-6.8.0-1024-gcp-64kUpgrade linux-image-oem-24.04bUpgrade linux-image-azure-lts-20.04Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-raspi2Upgrade linux-image-oracleUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-intelUpgrade linux-image-generic-lpaeUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.11.0-18-generic-64kUpgrade linux-image-realtimeUpgrade linux-image-5.15.0-1056-gkeop | 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