Rootkit

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
CAPEC ID: CAPEC-552
Version: 1.0

Procedure Examples

Name Description
APT28

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

APT41

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

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

HIDEDRV

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

HTRAN

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

LoJax

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

PoisonIvy

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

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.[7]

Uroburos

Uroburos is a rootkit used by Turla.[9]

Winnti Group

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

Zeroaccess

Zeroaccess is a kernel-mode rootkit.[8]

Mitigations

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

Detection

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]

References