CVE-2024-53142: Linux kernel · initramfs: avoid filename buffer overrun
Affects Linux kernelSource GCVE Database
Not known to be exploited · CVSS 7.8 High · fixed in 5.4.0-1142.152~18.04.1 : patch Linux kernel soon.
Data as of 28 Oct 2026, 11:13 UTC
- Patch
- Available – fixed in 5.4.0-1142.152~18.04.1, 5.4.0-1147.154~18.04.1, 5.4.0-1145.154~18.04.1 +83
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HExploitation evidence
Disclosed: evidence found.
CVE published 6 Dec 2024
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Patches and advisories
- ubuntu.com/security/notices/USN-7276-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7277-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7310-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7387-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7388-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7389-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7390-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7387-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7387-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7391-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7392-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7393-1 (opens in a new tab)
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Ubuntu 24.04 LTSlinuxpkg:deb/ubuntu/linux?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-awspkg:deb/ubuntu/linux-aws?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azurepkg:deb/ubuntu/linux-azure?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azure-6.11pkg:deb/ubuntu/linux-azure-6.11?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azure-nvidiapkg:deb/ubuntu/linux-azure-nvidia?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-gcppkg:deb/ubuntu/linux-gcp?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
In the Linux kernel, the following vulnerability has been resolved: initramfs: avoid filename buffer overrun The initramfs filename field is defined in Documentation/driver-api/early-userspace/buffer-format.rst as: 37 cpio_file := ALGN(4) + cpio_header + filename + "\0" + ALGN(4) + data ... 55 ============= ================== ========================= 56 Field name Field size Meaning 57 ============= ================== ========================= ... 70 c_namesize 8 bytes Length of filename, including final \0 When extracting an initramfs cpio archive, the kernel's do_name() path handler assumes a zero-terminated path at @collected, passing it directly to filp_open() / init_mkdir() / init_mknod(). If a specially crafted cpio entry carries a non-zero-terminated filename and is followed by uninitialized memory, then a file may be created with trailing characters that represent the uninitialized memory. The ability to create an initramfs entry would imply already having full control of the system, so the buffer overrun shouldn't be considered a security vulnerability. Append the output of the following bash script to an existing initramfs and observe any created /initramfs_test_fname_overrunAA* path. E.g. ./reproducer.sh | gzip >> /myinitramfs It's easiest to observe non-zero uninitialized memory when the output is gzipped, as it'll overflow the heap allocated @out_buf in __gunzip(), rather than the initrd_start+initrd_size block. ---- reproducer.sh ---- nilchar="A" # change to "\0" to properly zero terminate / pad magic="070701" ino=1 mode=$(( 0100777 )) uid=0 gid=0 nlink=1 mtime=1 filesize=0 devmajor=0 devminor=1 rdevmajor=0 rdevminor=0 csum=0 fname="initramfs_test_fname_overrun" namelen=$(( ${#fname} + 1 )) # plus one to account for terminator printf "%s%08x%08x%08x%08x%08x%08x%08x%08x%08x%08x%08x%08x%08x%s" \ $magic $ino $mode $uid $gid $nlink $mtime $filesize \ $devmajor $devminor $rdevmajor $rdevminor $namelen $csum $fname termpadlen=$(( 1 + ((4 - ((110 + $namelen) & 3)) % 4) )) printf "%.s${nilchar}" $(seq 1 $termpadlen) ---- reproducer.sh ---- Symlink filename fields handled in do_symlink() won't overrun past the data segment, due to the explicit zero-termination of the symlink target. Fix filename buffer overrun by aborting the initramfs FSM if any cpio entry doesn't carry a zero-terminator at the expected (name_len - 1) offset.
References
- ubuntu.com/security/CVE-2024-53142 (opens in a new tab)
- cve.org/CVERecord?id=CVE-2024-53142 (opens in a new tab)
- git.kernel.org/linus/e017671f534dd3f568db9e47b0583e853d2da9b5 (opens in a new tab)
- git.kernel.org/stable/c/49d01e736c3045319e030d1e75fb983011abaca7 (opens in a new tab)
- git.kernel.org/stable/c/bb7ac96670ab1d8d681015f9d66e45dad579af4d (opens in a new tab)
- git.kernel.org/stable/c/e017671f534dd3f568db9e47b0583e853d2da9b5 (opens in a new tab)
- git.kernel.org/stable/c/fb83b093f75806333b6f4ae29b158d2e0e3ec971 (opens in a new tab)
- ubuntu.com/security/notices/USN-7276-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7277-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7310-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7387-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7388-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7389-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7390-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7387-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7387-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7391-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7392-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7393-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7392-2 (opens in a new tab)