f2fs: validate ACL entry sizes in f2fs_acl_from_disk()
Summary
| CVE | CVE-2026-63814 |
|---|---|
| State | PUBLISHED |
| Assigner | Linux |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-07-19 12:16:54 UTC |
| Updated | 2026-07-20 15:16:48 UTC |
| Description | In the Linux kernel, the following vulnerability has been resolved: f2fs: validate ACL entry sizes in f2fs_acl_from_disk() f2fs_acl_count() only validates the aggregate ACL xattr length. A malformed ACL can still place ACL_USER or ACL_GROUP in a slot that only contains struct f2fs_acl_entry_short bytes, and f2fs_acl_from_disk() then reads entry->e_id before verifying that a full entry fits. Require a short entry before reading e_tag and e_perm, and require a full entry before reading e_id for ACL_USER and ACL_GROUP. Return -EFSCORRUPTED from these new truncated-entry checks, while keeping the pre-existing -EINVAL paths unchanged. Validation reproduced this kernel report: KASAN slab-out-of-bounds in __f2fs_get_acl+0x6fb/0x7e0 RIP: 0033:0x7f4b835ea7aa The buggy address belongs to the object at ffff888114589960 which belongs to the cache kmalloc-8 of size 8 The buggy address is located 0 bytes to the right of allocated 8-byte region [ffff888114589960, ffff888114589968) Read of size 4 Call trace: dump_stack_lvl+0x66/0xa0 (?:?) print_report+0xce/0x630 (?:?) __f2fs_get_acl+0x6fb/0x7e0 (fs/f2fs/acl.c:169) srso_alias_return_thunk+0x5/0xfbef5 (?:?) __virt_addr_valid+0x224/0x430 (?:?) kasan_report+0xe0/0x110 (?:?) __f2fs_get_acl+0x5/0x7e0 (fs/f2fs/acl.c:169) __get_acl+0x281/0x380 (?:?) vfs_get_acl+0x10b/0x190 (?:?) do_get_acl+0x2a/0x410 (?:?) do_get_acl+0x9/0x410 (?:?) do_getxattr+0xe8/0x260 (?:?) filename_getxattr+0xd1/0x140 (?:?) do_getname+0x2d/0x2d0 (?:?) path_getxattrat+0x16c/0x200 (?:?) lock_release+0xc8/0x290 (?:?) cgroup_update_frozen+0x9d/0x320 (?:?) lockdep_hardirqs_on_prepare+0xea/0x1a0 (?:?) trace_hardirqs_on+0x1a/0x170 (?:?) _raw_spin_unlock_irq+0x28/0x50 (?:?) do_syscall_64+0x115/0x6a0 (arch/x86/entry/syscall_64.c:87) entry_SYSCALL_64_after_hwframe+0x77/0x7f (?:?) |
Risk And Classification
Primary CVSS: v3.1 7.8 HIGH from 416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS: 0.001650000 probability, percentile 0.060310000 (date 2026-07-20)
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Secondary | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 3.1 | CNA | DECLARED | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
CVSS v3.1 Breakdown
Attack Vector
LocalAttack Complexity
LowPrivileges Required
LowUser Interaction
NoneScope
UnchangedConfidentiality
HighIntegrity
HighAvailability
HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| CNA | Linux | Linux | affected af48b85b8cd3fbb12c9b6759c16db6d69c0b03da 733cd8474e6d763d75ed96f3f2b98a25480cf2b9 git | Not specified |
| CNA | Linux | Linux | affected af48b85b8cd3fbb12c9b6759c16db6d69c0b03da 4e2a96ec7236e248e706850568e0a925fd21b588 git | Not specified |
| CNA | Linux | Linux | affected af48b85b8cd3fbb12c9b6759c16db6d69c0b03da 442ca20c54038e2400cf28aaa944cf1de2c8e65d git | Not specified |
| CNA | Linux | Linux | affected af48b85b8cd3fbb12c9b6759c16db6d69c0b03da 1ddf3fd21c4c652f9cab5552515c04a166662306 git | Not specified |
| CNA | Linux | Linux | affected af48b85b8cd3fbb12c9b6759c16db6d69c0b03da aba4f94ac1832c7299c33e1b4fe5f87eef6dc8f1 git | Not specified |
| CNA | Linux | Linux | affected af48b85b8cd3fbb12c9b6759c16db6d69c0b03da ff83de56882cb8466184d322abece2589258ca56 git | Not specified |
| CNA | Linux | Linux | affected af48b85b8cd3fbb12c9b6759c16db6d69c0b03da 5d8a39649947a4e86c8fbc682d7fc0041b8d109a git | Not specified |
| CNA | Linux | Linux | affected af48b85b8cd3fbb12c9b6759c16db6d69c0b03da c4810ada31e80cbe4011467c4f3b1e93f94134f3 git | Not specified |
| CNA | Linux | Linux | affected 3.8 | Not specified |
| CNA | Linux | Linux | unaffected 3.8 semver | Not specified |
| CNA | Linux | Linux | unaffected 5.10.260 5.10.* semver | Not specified |
| CNA | Linux | Linux | unaffected 5.15.211 5.15.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.1.177 6.1.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.6.144 6.6.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.12.95 6.12.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.18.38 6.18.* semver | Not specified |
| CNA | Linux | Linux | unaffected 7.1.3 7.1.* semver | Not specified |
| CNA | Linux | Linux | unaffected 7.2-rc1 * original_commit_for_fix | Not specified |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| git.kernel.org/stable/c/ff83de56882cb8466184d322abece2589258ca56 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/5d8a39649947a4e86c8fbc682d7fc0041b8d109a | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/442ca20c54038e2400cf28aaa944cf1de2c8e65d | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/4e2a96ec7236e248e706850568e0a925fd21b588 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/c4810ada31e80cbe4011467c4f3b1e93f94134f3 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/1ddf3fd21c4c652f9cab5552515c04a166662306 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/733cd8474e6d763d75ed96f3f2b98a25480cf2b9 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/aba4f94ac1832c7299c33e1b4fe5f87eef6dc8f1 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.