The article describes a layered Linux privilege escalation detection framework that combines general root-transition logic with technique-specific rules for SUID abuse, unshare, Python-driven exploits, and kernel page-cache corruption. It also reviews 2026 Linux LPE cases such as Copy Fail, DirtyFrag, Fragnesia, DirtyDecrypt, pedit COW, DirtyClone, CIFSwitch, OVSwrap, and CVE-2026-46333, showing how Elastic Defend and Auditd can catch them in practice. #CopyFail #DirtyFrag #Fragnesia #DirtyDecrypt #peditCOW #DirtyClone #CIFSwitch #OVSwrap #CVE-2026-46333
Keypoints
- The article presents a layered detection model for Linux local privilege escalation, centered on the common pattern of an unprivileged process becoming root.
- It combines broad outcome-based rules with narrower rules for SUID/SGID helper abuse, unshare-based escalation, Python exploit behavior, and suspicious descendant processes.
- Several 2026 kernel page-cache corruption bugs are highlighted, including Copy Fail, DirtyFrag, Fragnesia, DirtyDecrypt, pedit COW, and DirtyClone.
- The article explains how namespace creation with unshare can support both kernel exploitation and trusted-helper abuse, including CIFSwitch and OVSwrap.
- It also covers privileged helper and service abuse involving sudo, pkexec, busctl, ssh-keysign, and chage_pwn behavior tied to CVE-2026-46333.
- Elastic Defend, Auditd, and prebuilt Elastic detection rules are used to detect exploit primitives, root transitions, and suspicious execution chains.
- The detection strategy is designed to be durable against changing PoCs by focusing on host behavior rather than individual CVEs.
MITRE Techniques
- [T1548.001 ] Abuse Elevation Control Mechanism: Setuid and Setgid ā Used to detect SUID/SGID helper abuse where a process runs with effective uid 0 while the real user is non-root (āsetuid-root binaries and helpers are the single most common final step in a Linux LPEā).
- [T1068 ] Exploitation for Privilege Escalation ā The article focuses on Linux LPE exploits that use kernel bugs, helper abuse, and self-elevation to gain root (ālocal privilege escalation ⦠turns a foothold into full control of a hostā).
- [T1055 ] Process Injection ā Mentioned as part of kernel and subsystem coverage involving ptrace-related escalation paths (ākernel bugs scattered across ⦠ptraceā).
- [T1069.001 ] Permission Groups Discovery: Local Groups ā Relevant to checks on real user/group IDs versus effective IDs during escalation detection (āwhile the real user/group ID is notā).
- [T1202 ] Indirect Command Execution ā Used where helpers are proxied through arguments or shell one-liners (āproxying the execution so a name-based rule sees the wrong thingā).
- [T1059.004 ] Command and Scripting Interpreter: Unix Shell ā Detected when exploits spawn shells or use shell one-liners from writable paths (āa shell one-linerā, āroot shellā).
- [T1059.006 ] Command and Scripting Interpreter: Python ā Used for Python-based PoCs that escalate to root (āA growing share of public PoCs finish with a one-line interpreter payload, and Python is the workhorseā).
- [T1135 ] Network Share Discovery ā Not directly central, but namespace and network-related exploit paths touch network setup and access to privileged interfaces (āprivate user and network namespaceā).
- [T1136.001 ] Create Account: Local Account ā Implied by account and helper abuse involving passwd, chage, and related privileged utilities (āpasswdā, āaccounts-daemonā).
- [T1611 ] Escape to Host ā Relevant to container and namespace-based escalation attempts that aim to reach host privileges (ācontainer escapesā, āescape-to-host caseā).
- [T1021.004 ] Remote Services: D-Bus ā The busctl abuse section describes interaction with privileged D-Bus services (ātalks to a privileged D-Bus system service directly with busctlā).
- [T1610 ] Deploy Container ā Namespace creation and container-style isolation are used as a precursor in several exploits (āunshare(CLONE_NEWUSER)ā).
- [T1613 ] Container and Resource Discovery ā The article discusses user namespaces, mount namespaces, and network namespaces as escalation primitives (ānew user namespaceā, āprivate network namespaceā).
Indicators of Compromise
- [File names ] Privileged helpers and PoC binaries used as execution or finish points ā /usr/bin/su, /usr/lib/openssh/ssh-keysign, ./dirtydecrypt
- [File paths ] Writable staging locations used by exploit chains ā /tmp, /dev/shm, /var/tmp, /run/user/
- [Command-line strings ] Common root-check and privilege-confirmation commands run after escalation ā whoami, id, logname
- [Command-line strings ] Namespace and helper abuse flags seen in exploit setup ā unshare -r, unshare āuser, sudo -n bash
- [File paths ] Sensitive targets discussed in descriptor-theft and SUID abuse scenarios ā /etc/shadow, ssh_host_*_key
- [Binary names ] Frequently abused SUID/SGID helpers and privileged utilities ā sudo, pkexec, passwd, chsh, newgrp
- [Binary names ] User-controlled PoC executables and helper launchers referenced in the article ā ./skb_segment_exploit, ./sshkeysign_pwn, ./chage_pwn
- [Kernel/interface names ] Exploit-related interfaces and helpers observed in the article ā AF_ALG, splice(), skb_segment(), request_key(), pidfd_getfd()
Read more: https://www.elastic.co/security-labs/threat-command/linux-privilege-escalation-detection-framework