TL;DR: Fragnesia, tracked as CVE-2026-46300, is a Linux kernel local privilege escalation in the ESP-in-TCP path that lets an unprivileged attacker corrupt the page cache for a read-only binary and execute the modified cached copy as root, according to Corgea. The case shows why disk integrity alone is not enough when kernel networking paths expose cache-resident write primitives.
At a glance
What this is: Fragnesia is a Linux kernel local privilege escalation that abuses ESP-in-TCP page-cache corruption to turn unprivileged local code into root execution.
Why it matters: It matters because kernel, CI, workstation, and container access controls must assume cache-resident tampering can bypass file-integrity checks and become a full host compromise.
By the numbers:
- Only 44% of organisations have implemented any policies to manage their AI agents, despite 92% agreeing that governing AI agents is critical to enterprise security.
👉 Read Corgea's analysis of CVE-2026-46300 and Linux page-cache corruption
Context
Fragnesia is a Linux kernel local privilege escalation that exploits a page-cache corruption path rather than changing the file on disk. That distinction matters for Linux kernel security because conventional file integrity and endpoint checks can miss the attack until the cache is dropped or the host reboots.
The practical risk concentrates in environments that allow untrusted local code together with user or network namespace setup, including self-hosted CI runners, developer workstations, and shared container nodes. In those environments, a local compromise can become host-root compromise through kernel networking behaviour that most application teams do not actively govern.
This is a kernel control problem first and a Linux distribution problem second. The article's starting point is typical of modern host hardening gaps: the exploit path is technical, but the exposure is created by everyday infrastructure choices.
Key questions
Q: What breaks when Linux hosts allow ESP-in-TCP on untrusted workloads?
A: The host loses the assumption that read-only binaries are safe from local manipulation. A kernel page-cache corruption bug can let unprivileged code patch an in-memory copy of a setuid binary and execute it as root, even when the file on disk still looks untouched.
Q: Why do namespace-enabled CI runners increase kernel exploit risk?
A: Because user and network namespaces expand the paths available to local code, which can make a kernel bug reachable from ordinary build or automation jobs. On shared infrastructure, that turns a workload boundary into a potential privilege-escalation path.
Q: How do security teams know if a Linux kernel exploit is actually active?
A: They should watch for runtime signals such as unexpected namespace creation, XFRM activity from non-networking processes, unusual splice or sendfile use, and root shells after setuid execution. File hashes alone are not enough when the attack modifies cached memory rather than the file.
Q: Who should own response when a kernel local privilege escalation is disclosed?
A: Ownership should sit with the platform or infrastructure team, with security coordinating exposure review and containment. The response scope is host hardening, kernel patching, module removal, and verification of any workloads that ran on the affected nodes before remediation.
Technical breakdown
How ESP-in-TCP handling creates a write primitive in the page cache
The flaw sits in the Linux kernel's XFRM ESP-in-TCP path, where file-backed pages can be spliced into a receive queue and then processed as encrypted traffic. During coalescing and decrypt handling, the kernel can treat those pages as mutable data and write back into the in-memory page-cache copy. Because the target is the cached page, not the file on disk, the attacker gains a write-what-where style primitive against a read-only binary image. That is what makes the bug exploitable from ordinary local code.
Practical implication: Treat ESP-in-TCP exposure as a kernel memory integrity issue, not just a networking feature toggle.
Why a read-only binary can execute attacker-controlled code in memory
Once the attacker patches the cached copy of a privileged binary, subsequent execution resolves the in-memory page-cache version rather than the pristine on-disk file. Public proof-of-concept analysis describes modification of /usr/bin/su in memory so the process can call setresuid(0,0,0) and spawn a root shell. This is a classic example of cache-resident tampering, where the host appears normal if you only inspect the file system. The underlying risk is that execution trusts memory state that integrity tools often do not measure continuously.
Practical implication: Validate runtime memory and syscall telemetry, not only file hashes, when assessing kernel exploit exposure.
Which host features make the exploit practical in real environments
The exploit becomes practical when a host permits untrusted local code plus namespace setup paths that reach the vulnerable kernel surface. User namespaces, network namespaces, and access to XFRM operations expand the available trigger paths, especially on multi-tenant Linux hosts and self-hosted build systems. The bug is therefore less about a single misconfigured binary and more about how Linux privilege boundaries interact with kernel networking features. CloudLinux, Ubuntu, and other vendors may diverge on exposure depending on kernel build options, module availability, and backports.
Practical implication: Audit namespace, module, and container policy together, because the vulnerable path often depends on their combination.
Threat narrative
Attacker objective: The attacker wants reliable local root execution on a Linux host while avoiding obvious file-system evidence.
- Entry occurs when an unprivileged local process reaches the vulnerable ESP-in-TCP path on a host that allows the relevant namespace and module setup.
- Credential access is not the primary stage here; the attacker instead abuses kernel page-cache writes to modify a privileged binary in memory.
- Escalation happens when the attacker executes the cache-patched setuid binary and obtains root without changing the on-disk file.
- Impact is full host compromise, which can expose credentials, workloads, and CI or container environments reachable from the affected system.
Breaches seen in the wild
- MITRE ATT&CK Enterprise Matrix — MITRE ATT&CK Enterprise — adversary tactics and techniques, threat detection, attack chain mapping, credential access, lateral movement, privilege escalation.
- Meta AI Instagram Account Takeover — 20,225 Instagram accounts hijacked via compromised Meta AI support chatbot with overprivileged access.
Read our 52 NHI Breaches Analysis report for a comprehensive view of breaches impacting Non-Human Identities including AI Agents.
NHI Mgmt Group analysis
Page-cache corruption is now an identity and workload trust problem, not just a kernel bug. When a local process can turn cached binary state into root execution, the real failure is governance over which workloads are trusted to reach kernel networking surfaces. That intersects directly with IAM, PAM, and NHI controls because CI runners, build agents, and automation jobs often operate with implicit trust and elevated local capability. Practitioners should treat host-level privilege boundaries as part of identity governance.
Kernel module exposure creates a standing-privilege analogue for Linux hosts. If esp4, esp6, or ESP-in-TCP support remains available where it is not operationally required, the host carries persistent attack surface that behaves like unnecessary standing access. The named concept here is cache-resident privilege escalation: attacker-controlled memory state that survives file integrity checks long enough to cross into root execution. Security teams should remove that standing surface wherever IPsec functionality is not required.
The strongest control gap is not detection failure, but assumption failure. Many teams assume read-only binaries and disk integrity checks are sufficient to prove host safety. Fragnesia shows that kernel-mediated memory writes can invalidate that assumption entirely, especially in shared infrastructure and developer environments. The correct practitioner conclusion is to govern kernel features, namespace use, and untrusted local code as one control plane.
Distribution-specific patching complicates operational ownership. CloudLinux, Ubuntu, and other vendors do not converge on exposure status at the same pace because kernel configuration and backport state differ. That means vulnerability management cannot stop at CVE intake; teams need asset-level feature awareness to know which hosts actually expose the vulnerable path. The practitioner implication is to couple patch tracking with runtime exposure inventory.
From our research:
- The average estimated time to remediate a leaked secret is 27 days, despite 75% of organisations expressing strong confidence in their secrets management capabilities, according to The State of Secrets in AppSec.
- From our research: Organisations maintain an average of 6 distinct secrets manager instances, creating fragmentation that undermines centralised control, according to The State of Secrets in AppSec.
- The next control question is not only whether secrets are rotated, but whether the host paths that protect them can be trusted at runtime.
What this signals
Cache-resident privilege escalation is a useful way to think about this class of Linux kernel flaw. It describes situations where the attacker never needs to alter the on-disk file to achieve root execution, which means platform teams must pair hardening with runtime verification and module governance.
The practical signal for infrastructure and CI owners is that host trust now depends on kernel feature inventory as much as patch level. Asset owners should map exposed modules and namespace policy to the workflows that run on each node, then use controls such as NIST SP 800-53 Rev 5 Security and Privacy Controls to tie that inventory to accountable remediation.
For teams already building identity-centric control planes, the lesson is consistent with the 52 NHI breaches Report: local privilege escalation often becomes the bridge from an ordinary workload compromise to broader credential exposure. The right response is to reduce the number of hosts where untrusted code can ever reach privileged kernel paths, then verify that assumption continuously.
For practitioners
- Disable vulnerable ESP-related modules where IPsec is not required Blacklist esp4, esp6, and related modules on hosts that do not need them, and regenerate initramfs where required so the block survives reboot.
- Restrict namespace creation on untrusted Linux workloads Limit unprivileged user namespaces and network namespaces on self-hosted CI, developer workstations, and shared nodes unless a reviewed use case requires them.
- Remove unnecessary container and job privileges Avoid granting CAP_NET_ADMIN to containers and build jobs unless the workflow explicitly depends on it, because the exploit path becomes easier when XFRM operations are reachable.
- Shift detection from file integrity to runtime telemetry Look for unexpected namespace creation, XFRM netlink activity, splice or sendfile patterns, and root shells that follow execution of setuid binaries.
Key takeaways
- Fragnesia shows that Linux kernel networking paths can turn ordinary local code into root execution without touching the file on disk.
- The practical exposure is highest on shared infrastructure, self-hosted CI, developer workstations, and container hosts that allow namespace-enabled untrusted code.
- Effective response depends on patching, module blacklisting, namespace restriction, and runtime telemetry, not on file integrity checks alone.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
MITRE ATT&CK address the attack and risk surface, while NIST CSF 2.0, NIST SP 800-53 Rev 5 and CIS Controls v8 set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| MITRE ATT&CK | TA0004 , Privilege Escalation; TA0006 , Credential Access; TA0040 , Impact | The exploit chain culminates in local privilege escalation and host compromise. |
| NIST CSF 2.0 | PR.AC-4 | Least privilege and access governance apply to untrusted code execution zones. |
| NIST SP 800-53 Rev 5 | AC-6 | Least privilege control is directly relevant to container, CI, and workstation exposure. |
| CIS Controls v8 | CIS-5 , Account Management | Local account and privilege hygiene matters when a setuid binary becomes the escalation target. |
Map exposed hosts to privilege-escalation and impact tactics, then reduce kernel attack surface on untrusted nodes.
Key terms
- Cache-Resident Privilege Escalation: A privilege-escalation pattern where the attacker changes the in-memory cached version of a file rather than the file on disk. This can bypass simple integrity checks and still influence what executes, which is why runtime telemetry matters when kernel bugs create write primitives.
- ESP-in-TCP: A Linux kernel networking mode that carries IPsec ESP traffic over TCP and relies on kernel handling of packet and fragment state. When that handling is flawed, the feature can become an unexpected attack surface for local code that can reach the right namespace and module path.
- Page Cache: The page cache is kernel-managed memory used to keep file data available for faster access. When a flaw allows an attacker to corrupt or influence page cache contents, sensitive binaries or data can be altered in memory without the expected protection boundary holding.
- Setuid Binary: A binary that runs with the permissions of its owner rather than the user who launched it, often root. Setuid programs are high-value escalation targets because any corruption of their execution path can immediately translate into elevated privileges.
What's in the full analysis
Corgea's full analysis covers the operational detail this post intentionally leaves for the source:
- Public proof-of-concept behaviour showing how the page-cache write primitive is triggered on affected kernels
- Distribution-specific exposure notes for CloudLinux, Ubuntu, Amazon Linux, and other kernel lines
- Exact mitigation commands, module blacklist details, and reboot or cache-drop considerations
- Vendor and tracker status references for teams validating patch coverage across fleets
Deepen your knowledge
NHI Foundation Level course, the industry's only accredited NHI security programme, covers NHI governance, workload identity, secrets management, and identity lifecycle controls. It is a fit for practitioners who need to connect host hardening decisions to identity risk.
Published by the NHIMG editorial team on August 21, 2026.
NHI Mgmt Group — the independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org