The sub-techniques beta is now live! Read the release blog post for more info.


Rootkits are programs that hide the existence of malware by intercepting (i.e., Hooking) and modifying operating system API calls that supply system information. [1] Rootkits or rootkit enabling functionality may reside at the user or kernel level in the operating system or lower, to include a Hypervisor, Master Boot Record, or the System Firmware. [2]

Adversaries may use rootkits to hide the presence of programs, files, network connections, services, drivers, and other system components. Rootkits have been seen for Windows, Linux, and Mac OS X systems. [3] [4]

ID: T1014
Tactic: Defense Evasion
Platform: Linux, macOS, Windows
Permissions Required: Administrator, SYSTEM, root
Data Sources: BIOS, MBR, System calls
Defense Bypassed: File monitoring, Host intrusion prevention systems, Process whitelisting, Signature-based detection, System access controls, Whitelisting by file name or path, Anti-virus
Version: 1.0
Created: 31 May 2017
Last Modified: 18 June 2019

Procedure Examples

Name Description

APT28 has used a UEFI (Unified Extensible Firmware Interface) rootkit known as LoJax.[15][13]


APT41 deployed rootkits on Linux systems.[16]

Hacking Team UEFI Rootkit

Hacking Team UEFI Rootkit is a UEFI BIOS rootkit developed by the company Hacking Team to persist remote access software on some targeted systems.[11]


HiddenWasp uses a rootkit to hook and implement functions on the system.[12]


HIDEDRV is a rootkit that hides certain operating system artifacts.[10]


HTRAN can install a rootkit to hide network connections from the host OS.[5]


LoJax is a UEFI BIOS rootkit deployed to persist remote access software on some targeted systems.[13]


PoisonIvy starts a rootkit from a malicious file dropped to disk.[6]


Umbreon hides from defenders by hooking libc function calls, hiding artifacts that would reveal its presence, such as the user account it creates to provide access and undermining strace, a tool often used to identify malware.[7]


Uroburos is a rootkit used by Turla.[9]

Winnti Group

Winnti Group used a rootkit to modify typical server functionality.[14]


Zeroaccess is a kernel-mode rootkit.[8]


This type of attack technique cannot be easily mitigated with preventive controls since it is based on the abuse of system features.


Some rootkit protections may be built into anti-virus or operating system software. There are dedicated rootkit detection tools that look for specific types of rootkit behavior. Monitor for the existence of unrecognized DLLs, devices, services, and changes to the MBR. [2]