CVE-2025-40049: Squashfs: fix uninit-value in squashfs_get_parent
In the Linux kernel, the following vulnerability has been resolved:
Squashfs: fix uninit-value in squashfs_get_parent
Syzkaller reports a "KMSAN: uninit-value in squashfs_get_parent" bug.
This is caused by open_by_handle_at() being called with a file handle
containing an invalid parent inode number. In particular the inode number
is that of a symbolic link, rather than a directory.
Squashfs_get_parent() gets called with that symbolic link inode, and
accesses the parent member field.
unsigned int parent_ino = squashfs_i(inode)->parent;
Because non-directory inodes in Squashfs do not have a parent value, this
is uninitialised, and this causes an uninitialised value access.
The fix is to initialise parent with the invalid inode 0, which will cause
an EINVAL error to be returned.
Regular inodes used to share the parent field with the block_list_start
field. This is removed in this commit to enable the parent field to
contain the invalid inode number 0.
Security readout for executives and security teams
Plain-English summary
This Linux kernel issue is in Squashfs handling. A crafted invalid file handle can make the kernel read an uninitialized parent field for a non-directory inode. The provided sources describe the bug and code fix, but do not state business impact, CVSS severity, or active exploitation.
Executive priority
Track this as a kernel hygiene update, not an emergency, unless your environment processes untrusted Squashfs images. No active exploitation or severity score is provided, so prioritize through normal Linux patch governance with attention to exposed Squashfs workflows.
Technical view
squashfs_get_parent() can be reached through open_by_handle_at() with a file handle whose parent inode number points to a symbolic link, not a directory. Squashfs non-directory inodes lack a valid parent value, causing an uninitialized value access. The kernel fix initializes parent to inode 0 so EINVAL is returned.
Likely exposure
Exposure is limited to Linux systems running affected kernel versions with Squashfs code reachable. The bundle lists Linux kernel versions including 2.6.29 and stable branch points through 6.18, but precise distribution package impact is not provided.
Exploitation context
The source bundle does not cite public exploitation, weaponized proof of concept, or CISA KEV listing. The issue was reported by Syzkaller/KMSAN, suggesting automated kernel testing found it. Treat exploitability and real-world impact as unproven from these sources.
Researcher notes
Key evidence is the kernel description: invalid parent inode via open_by_handle_at(), symlink inode passed to squashfs_get_parent(), uninitialized parent field read, and fix by initializing parent to invalid inode 0. Impact classification, privilege requirements, and exploitability are not established in the bundle.
Mitigation direction
Check your Linux vendor advisory for fixed kernel packages for CVE-2025-40049.
Prioritize updates on systems that mount or process Squashfs filesystems.
Deploy kernel versions containing the referenced upstream stable commits when vendor-approved.
If patching is delayed, restrict untrusted Squashfs handling where operationally possible.
Validation and detection
Inventory Linux kernel versions across servers, appliances, and images.
Check whether deployed kernels include one of the referenced stable fix commits.
Review vendor kernel changelogs for CVE-2025-40049 or the Squashfs parent initialization fix.
Confirm whether systems mount or ingest Squashfs content from untrusted sources.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2025-40049 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
9Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Oct 28, 2025, 11:48 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.