{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2024-33619","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2024-06-21T10:13:16.311Z","datePublished":"2024-06-21T10:18:05.007Z","dateUpdated":"2026-08-05T11:29:50.746Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T11:29:50.746Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nefi: libstub: only free priv.runtime_map when allocated\n\npriv.runtime_map is only allocated when efi_novamap is not set.\nOtherwise, it is an uninitialized value.  In the error path, it is freed\nunconditionally.  Avoid passing an uninitialized value to free_pool.\nFree priv.runtime_map only when it was allocated.\n\nThis bug was discovered and resolved using Coverity Static Analysis\nSecurity Testing (SAST) by Synopsys, Inc."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The vulnerable code is the EFI boot stub, reachable only by influencing the boot configuration (kernel command line `efi=novamap`/`dtb=`, or files on the EFI System Partition) on the local machine; no network protocol or remote peer data reaches it.\nAC:L - On arm64 default configs `efi_novamap` is already true via `check_platform_features()`, and `CONFIG_EFI_ARMSTUB_DTB_LOADER` defaults to y, so a `dtb=` pointing at a missing or malformed blob drives `allocate_new_fdt_and_exit_boot()` into the `fail:` path 100% of the time with no race or unpredictable precondition.\nPR:L - In the embedded, automotive and IoT arm64 deployments where the generic EFI/DT stub is dominant, write access to the ESP and boot configuration is routinely delegated to a non-root OTA/update service account rather than requiring init-namespace root, so a low-privileged local account suffices to plant the triggering `dtb=`/cmdline.\nUI:N - Once the boot configuration is planted, the attacker can trigger the reboot themselves or rely on the device's normal reboot/OTA cycle; no separate victim action is needed.\nS:U - The EFI stub executes as a UEFI application in the same flat address space and privilege level as boot services, so no isolation boundary is enforced between the vulnerable component and the impacted firmware heap.\nC:H - Freeing an attacker-groomable stale pointer corrupts the UEFI pool allocator before ExitBootServices, yielding a use-after-free/double-free primitive over firmware heap memory that can be leveraged to read boot-time and firmware data.\nI:H - The same premature-free/double-free of a live UEFI pool buffer allows subsequent allocations to overlap live firmware structures, giving a write and control-flow-hijack primitive inside the pre-ExitBootServices trusted environment that is about to hand off the machine.\nA:H - The firmware dereferences the uninitialized pointer at `ptr - sizeof(POOL_HEAD)`, which faults or hangs on unmapped/MMIO addresses, and heap corruption can leave the platform unable to complete boot."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/firmware/efi/libstub/fdt.c"],"versions":[{"version":"f80d26043af91ceb5036c478101c015edb9e7630","lessThan":"b8938d6f570f010a1dcdbfed3e5b5d3258c2a908","status":"affected","versionType":"git"},{"version":"f80d26043af91ceb5036c478101c015edb9e7630","lessThan":"9dce01f386c9ce6990c0a83fa14b1c95330b037e","status":"affected","versionType":"git"},{"version":"f80d26043af91ceb5036c478101c015edb9e7630","lessThan":"6ca67a5fe1c606d1fbe24c30a9fc0bdc43a18554","status":"affected","versionType":"git"},{"version":"f80d26043af91ceb5036c478101c015edb9e7630","lessThan":"4b2543f7e1e6b91cfc8dd1696e3cdf01c3ac8974","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/firmware/efi/libstub/fdt.c"],"versions":[{"version":"6.1","status":"affected"},{"version":"0","lessThan":"6.1","status":"unaffected","versionType":"semver"},{"version":"6.1.93","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.33","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.9.4","lessThanOrEqual":"6.9.*","status":"unaffected","versionType":"semver"},{"version":"6.10","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1","versionEndExcluding":"6.1.93"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1","versionEndExcluding":"6.6.33"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1","versionEndExcluding":"6.9.4"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1","versionEndExcluding":"6.10"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/b8938d6f570f010a1dcdbfed3e5b5d3258c2a908"},{"url":"https://git.kernel.org/stable/c/9dce01f386c9ce6990c0a83fa14b1c95330b037e"},{"url":"https://git.kernel.org/stable/c/6ca67a5fe1c606d1fbe24c30a9fc0bdc43a18554"},{"url":"https://git.kernel.org/stable/c/4b2543f7e1e6b91cfc8dd1696e3cdf01c3ac8974"}],"title":"efi: libstub: only free priv.runtime_map when allocated","x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"providerMetadata":{"orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE","dateUpdated":"2024-08-02T02:36:04.107Z"},"title":"CVE Program Container","references":[{"url":"https://git.kernel.org/stable/c/b8938d6f570f010a1dcdbfed3e5b5d3258c2a908","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/9dce01f386c9ce6990c0a83fa14b1c95330b037e","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/6ca67a5fe1c606d1fbe24c30a9fc0bdc43a18554","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/4b2543f7e1e6b91cfc8dd1696e3cdf01c3ac8974","tags":["x_transferred"]}]},{"metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2024-33619","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2024-09-10T17:09:50.722948Z"}}}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2024-09-11T17:34:46.488Z"}}]}}