CVE-2026-72379

fs: refuse O_TMPFILE creation with an unmapped fsuid or fsgid

State
Published
Severity
Not scored
Published
Aug 15, 2026
Updated
Oct 30, 2026
Reserved
Aug 9, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

fs: refuse O_TMPFILE creation with an unmapped fsuid or fsgid

vfs_tmpfile() never checked that the caller's fsuid and fsgid map into the filesystem. On an idmapped mount whose idmapping does not cover the caller's fs{u,g}id, the ->tmpfile() instance initializes the new inode through inode_init_owner(), where mapped_fsuid()/mapped_fsgid() return INVALID_UID/INVALID_GID, and the tmpfile ends up owned by (uid_t)-1.

Every other creation path already refuses this: may_o_create() (O_CREAT) and may_create_dentry() (mkdir, mknod, symlink, link) bail out with -EOVERFLOW via fsuidgid_has_mapping() precisely so that an object cannot be created with an owner the filesystem cannot represent. An O_TMPFILE is no exception: it is created I_LINKABLE and linkat(2) can splice it into the namespace afterwards, so the same guarantee must hold.

Add the missing fsuidgid_has_mapping() check to vfs_tmpfile(). On a non-idmapped mount the caller's fs{u,g}id always map in the superblock's user namespace, so this is a no-op there and only takes effect on an idmapped mount that does not map the caller. It applies to every filesystem that sets FS_ALLOW_IDMAP and implements ->tmpfile() (tmpfs, ext4, btrfs, xfs, f2fs, ...), and to overlayfs, whose upper-layer tmpfile creation funnels through vfs_tmpfile() via backing_tmpfile_open().

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 8e5389132ab429604c1a2459b52f0c849a71cc61 to before 74365c6e367725728d5ce36d38ca116c9f77a254Affected
  • 8e5389132ab429604c1a2459b52f0c849a71cc61 to before bac8fb0d60254846f3b56957435dcd870ae12948Affected
  • 8e5389132ab429604c1a2459b52f0c849a71cc61 to before 503d0568a525b168d9aa5ca046ec72fc5477df84Affected
  • 8e5389132ab429604c1a2459b52f0c849a71cc61 to before a2038514e69371eb493083a6a897ed20fcbb8acbAffected
  • 8e5389132ab429604c1a2459b52f0c849a71cc61 to before 47e434da476b5a8bcd1e6e52ab03c5ee7764ee78Affected
  • 8e5389132ab429604c1a2459b52f0c849a71cc61 to before 539dce1144651f7976fa418e618b0b574bf15eebAffected
LinuxLinux
  • 5.13Affected
  • before 5.13Not affected
  • 6.1.191 through 6.1.*Not affected
  • 6.6.145 through 6.6.*Not affected
  • 6.12.97 through 6.12.*Not affected
  • 6.18.40 through 6.18.*Not affected
  • 7.1.5 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.