Join our Newsletter — 33% off our NHI Course
Home› Glossary› Cyber Security› Linux mmap
Cyber Security

Linux mmap

← Back to Glossary
By NHI Mgmt Group Updated October 17, 2026 Domain: Cyber Security

Linux mmap is a system call that maps files or anonymous memory into a process address space. Attackers abuse it for fileless code loading, executable memory, or hiding payloads in memory rather than on disk. Defenders should monitor suspicious executable mappings, memory protections, and processes that map writable and executable regions.

What Linux mmap does in memory and process execution

Linux mmap maps files or anonymous memory into a process address space, which changes how programs read, write, and execute data. It is useful for performance and flexibility, but it also creates a path for code to exist primarily in memory instead of as an obvious file on disk.

For defenders, the key distinction is not the syscall itself but the mapping behaviour it enables: a benign application may map shared libraries, data files, or anonymous buffers, while suspicious activity often involves mappings that later become executable or are used to stage payloads without a normal file-backed artefact.

Why attackers abuse mmap for fileless execution

Attackers value mmap because it can support fileless code loading, hidden payload staging, and memory-resident execution that is harder to catch with file-centric controls. The danger is amplified when a process maps memory with permissions that allow both writing and execution, because that combination can support self-modifying code or shellcode unpacking.

Memorably, the risk is not limited to malware written to evade disk scanning. Any abuse of executable anonymous memory, unusual shared-memory handling, or mapping patterns that do not fit the process’s normal behaviour can indicate an attempt to bypass standard defensive visibility. MITRE ATT&CK Enterprise Matrix is useful here because mmap abuse commonly supports later stages such as execution, persistence, or defense evasion.

How defenders detect suspicious memory mappings

Detection starts with process and memory telemetry, not just file events. Look for executable mappings in user-space processes that do not normally need them, regions with both write and execute permissions, and repeated transitions from writable to executable memory. Those patterns become more meaningful when combined with process lineage, unusual parent-child relationships, or a process that suddenly begins loading code from memory rather than from a signed or expected binary.

Defenders should also review whether the mapping pattern matches the application’s normal role. A database, document viewer, or service daemon mapping executable anonymous memory is usually more suspicious than a runtime, JIT engine, or legitimate plugin host. MITRE D3FEND Guide is a strong reference for mapping these observations to defensive techniques such as process lineage analysis, executable denylisting, system call filtering, and process self-modification detection.

Hardening and containment for mmap abuse

Practical controls focus on reducing the attacker’s ability to turn mapped memory into executable code. Constrain memory permissions where possible, limit where executable memory can be created, and make sure application designs do not rely on unnecessary write-then-execute behaviour. Kernel and host controls that reduce exploitability, together with application hardening, make mmap abuse harder to turn into code execution.

It also helps to align the response with the workload’s trust boundary. If a process should never need dynamic code generation, memory-protection anomalies deserve immediate review. If it legitimately needs JIT-style execution, the question becomes whether the pattern is bounded, expected, and monitored rather than simply permitted. NIST AI Risk Management Framework is not about mmap specifically, but its emphasis on managing technical risk through context-aware controls is a useful model for deciding when dynamic execution is acceptable and when it is not.

Risk and Threat Considerations

mmap becomes risky when it is used to hide executable content in memory, bypass file-based inspection, or create writable and executable regions that support code injection. The main concern is that an adversary can keep payloads out of obvious disk artefacts while still gaining execution inside a trusted process.

Failure mechanism: A process maps memory in a way that allows injected or unpacked code to be written, made executable, and run without a normal file-backed trail, which weakens visibility and can enable persistence or evasion.

Impact: Detection becomes harder, incident scoping becomes more complex, and a compromised process may execute attacker-controlled code while appearing to behave like a legitimate memory consumer.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

MITRE ATT&CK addresses the attack and risk surface, while NIST SP 800-53 Rev 5 and CIS Controls v8 set the governance and control requirements practitioners need to meet.

FrameworkControl / ReferenceRelevance
MITRE ATT&CKT1055 — Process Injectionmmap abuse often supports in-memory execution and payload staging
Recommendation — Map executable memory abuse to process-injection techniques and hunt for memory-resident execution.
NIST SP 800-53 Rev 5SI-4 — System MonitoringSuspicious executable mappings are a monitoring and detection problem
SC-30 — Concealment and MisdirectionFileless payload hiding in memory is a concealment pattern
Recommendation — Monitor for unusual memory permissions and executable mappings in host telemetry. Detect payloads that evade file-based inspection by residing in mapped memory.
CIS Controls v8CIS-8 — Audit Log ManagementMemory mapping abuse is surfaced through process and system-event logging
CIS-10 — Malware DefensesExecutable mappings are a malware execution and evasion concern
Recommendation — Centralize and review process and kernel telemetry for suspicious memory permission changes. Harden hosts to reduce memory-resident malware and detect fileless execution paths.

Practitioner Guidance

What to watch for: Treat executable anonymous memory, writable-and-executable mappings, and unexpected permission changes as investigation triggers rather than isolated anomalies. The most useful judgement is whether the mapping pattern matches the application’s purpose, because legitimate memory mapping and malicious fileless execution can look similar at a glance.

Practitioner takeaway: The strongest signal is often a mismatch between process function and memory behaviour, not the mmap call alone.

Free weekly newsletter

Subscribe to the NHI & AI Identity Journal

The latest on NHI and Agentic AI security – articles, research, breaches, news and events every week.

Bonus 33% off our NHI Course when you subscribe.

NHIMG Editorial Note
Reviewed and updated by the NHIMG editorial team on October 17, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org