CVE-2026-49421 unlinkat(2) ignores AT_RESOLVE_BENEATH flag
A kernel bug in FreeBSD allows attackers to bypass path containment restrictions and delete files outside the intended directory tree.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2026-49421?
CVE-2026-49421 is a high-severity path traversal vulnerability in Freebsd Freebsd, published on 19 Aug 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
The kernel function that implements unlinkat(2) and funlinkat(2) validated the AT_RESOLVE_BENEATH flag but failed to pass it through to the underlying path lookup. The flag was silently dropped, so path resolution was not actually restricted.
A process that uses AT_RESOLVE_BENEATH with unlinkat(2) or funlinkat(2) to confine path resolution can in fact resolve paths above the starting directory. A caller relying on this flag for path containment may delete files outside the intended directory tree.
Weakness: CWE-273
Which versions are affected by CVE-2026-49421?
It affects 1 product.
Products include Freebsd Freebsd.
How do I fix CVE-2026-49421?
No fix has been published for CVE-2026-49421 yet. Limit exposure of the affected software until one is available.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2026-49421 being exploited?
There is no known exploitation of CVE-2026-49421 in the wild and no public exploit code.