From enterprise
Jump to: navigation, search
ID T1014
Tactic Defense Evasion
Platform Linux, macOS, Windows
Permissions Required Administrator, SYSTEM, root
Data Sources BIOS, MBR, System calls
Defense Bypassed Anti-virus, File monitoring, Host intrusion prevention systems, Process whitelisting, Signature-based detection, System access controls, Whitelisting by file name or path

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.34


  • Winnti Group used a rootkit to modify typical server functionality.5
  • starts a rootkit from a malicious file dropped to disk.6
  • HIDEDRV is a rootkit that hides certain operating system artifacts.7
  • Hacking Team UEFI Rootkit is a UEFI BIOS rootkit developed by the company Hacking Team to persist remote access software on some targeted systems.8
  • Umbreon 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. 9
  • Uroburos is a rootkit used by Turla.10
  • Zeroaccess is a kernel-mode rootkit.11


Identify potentially malicious software that may contain rootkit functionality, and audit and/or block it by using whitelisting12 tools, like AppLocker,1314 or Software Restriction Policies15 where appropriate.16


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