Final payload installation includes mounting and binding to the \/proc\/ filepath on the victim system to enable subsequent operation in memory while also removing on-disk artifacts.1
- Tactics
- Privilege Escalation, Stealth
- Platform
- Linux
- Version
- 2.0
- Created
- 14 January 2020
- Last modified
- 12 May 2026
Adversaries may inject malicious code into processes via the /proc filesystem in order to evade process-based defenses as well as possibly elevate privileges. Proc memory injection is a method of executing arbitrary code in the address space of a separate live process.
Proc Memory MITRE reference T1055.009
1 campaign has been recorded using this technique. Listed newest first; dates are year-granularity and attribution is MITRE’s.
All 1 campaigns for this technique
Offense vs defense T1055.009
Is defensive coverage keeping up with adversary use? Eight counts, each ranked against all 697 ATT&CK techniques. Attack sits left, defense right, so a shape leaning left means adversaries are better documented here than defenders are equipped. Hover any spoke for its percentile and the share of techniques that have more. The timeline below shows when each side arrived.
How it got here
Adversary activity (campaign spans) over cumulative rule output. Each source is plotted independently from zero, so neither line includes the other. Campaign dates are year-granularity.
Proc Memory detection strategy DET0541
MITRE names one behaviour worth catching for this technique and breaks it into 1 analytic, one per platform. Each carries the log sources it needs and the fields you tune per environment.
Detection Strategy for /proc Memory Injection on Linux
AN1494 · Linux
Detects adversary behavior where a process enumerates and modifies another process's memory using /proc/[pid]/maps and /proc/[pid]/mem files. This includes identifying gadgets via memory mappings and overwriting process memory via low-level file modification or dd usage.
Log sources
The data this analytic draws on. You do not need every component — each one you already collect covers part of it. Each links to its ATT&CK record.
| Data component | Name | Channel |
|---|---|---|
| OS API ExecutionDC0021 | auditd:SYSCALL | execve of dd or sed targeting /proc/*/mem |
| File AccessDC0055 | linux:osquery | /proc/*/maps access |
| File ModificationDC0061 | auditd:SYSCALL | open/write to /proc/*/mem or /proc/*/maps |
Tunable fields
MITRE calls these the analytic’s mutable elements: the thresholds and filters you set for your own environment.
| Field | What you tune |
|---|---|
| TargetProcNameRegex | Regex list of high-value processes attackers may inject into, such as sshd, nginx, or sleep |
| TimeWindowBetweenMapAccessAndMemWrite | Time span (e.g., <15s) between map read and memory write that may indicate enumeration-to-injection |
| InvokerBinaryAllowlist | Allowlist of processes allowed to access /proc/[pid]/mem (e.g., gdb, strace) |
| FileWriteThreshold | Alert if written bytes to /proc/[pid]/mem exceed a suspicious threshold (e.g., >4096 bytes) |
Some endpoint security solutions can be configured to block some types of process injection based on common sequences of behavior that occur during the injection process.
Restrict the permissions on sensitive files such as /proc/[pid]/maps or /proc/[pid]/mem.
Tests from Atomic Red Team (MIT licence) · technique definition