Pentesting Tools

Full Spectrum Event Tracing For Windows Detection In The kernel Against Rootkits

Sanctum EDR demonstrates a multi-layered approach to detecting and preventing Event Tracing for Windows (ETW) tampering by rootkits, combining kernel-mode monitoring with user-space protections.

This toolkit focuses on neutralizing advanced techniques used by malware like Remcos RAT and Lazarus Group’s FudModule rootkit to blind security solutions.

Key Functions

  1. Kernel Dispatch Table Monitoring
    Sanctum’s driver periodically validates the integrity of the ETW Kernel Dispatch Table – a critical structure holding pointers to ETW provider GUIDs.
    • By comparing runtime addresses against a baseline snapshot, it detects rootkits attempting to nullify entries (e.g., EtwThreatIntProvRegHandle).
      • Tampering triggers an immediate bug check (BSOD) via KeBugCheckEx to prevent exploitation1.
  2. _ETW_SILODRIVERSTATE Protection
    The tool monitors the EtwpActiveSystemLoggers bitmask and GUID enable flags within this kernel structure.
    • Lazarus-style attacks that clear these flags to disable ETW providers are detected through cyclic redundancy checks. For critical providers like ETW Threat Intelligence, zero-value masks prompt system halts1.
  3. Registry Guardrails
    A kernel filter driver using CmRegisterCallbackEx blocks modifications to ETW-related registry keys (e.g., HKLM\...\Autologger\EventLog-Application). This prevents persistent disablement of ETW logging through registry tampering1.
  4. User-Space NTDLL Guard
    A companion process hashes NTDLL’s .text segment every 50ms to detect memory patching attempts. When Remcos RAT tried patching EtwEventWrite, Sanctum suspended all process threads and terminated execution via hooked NtProtectVirtualMemory1.

Testing against real-world threats revealed:

  • Complete blockage of Remcos’ user-space ETW bypass via memory protection hooks
  • Successful identification of FudModule rootkit’s GUID entry manipulation through kernel structure monitoring
  • Prevention of registry-based persistence mechanisms with 100% block rate in controlled tests

The system employs defense-in-depth by combining:

  • Kernel Patch Guard-style periodic checks
  • Real-time syscall hooking
  • Registry write filtering
  • Memory integrity validation

This layered approach raises the bar for adversaries, requiring simultaneous bypass of multiple detection vectors while maintaining operational stealth – a significant challenge given Sanctum’s 50ms check intervals and hardware-isolated components1.

Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

groupdel Command in Linux: Remove a Group and Audit Files

The groupdel command in Linux removes a group from the system. It deletes the group's entry from /etc/group and /etc/gshadow,…

8 hours ago

wc Command in Linux: Count Lines, Words, Characters, and Bytes

The wc command in Linux counts lines, words, characters, and bytes in files or standard input. It…

8 hours ago

top Command in Linux: Monitor Processes and Resource Usage

The top command in Linux provides a real-time view of running processes and system resource usage. From…

8 hours ago

usermod Command in Linux: Modify User Accounts and Groups

The usermod command in Linux modifies existing user account attributes. You can use it to manage group…

8 hours ago

sort Command in Linux: Sort Text, Numbers, Columns, and More

The sort command in Linux reads lines from files or standard input and writes them to standard…

1 day ago

wall Command in Linux: Broadcast Messages to Logged-In Users

The wall command in Linux sends a message to the terminals of all currently logged-in users. The…

1 day ago