Operator On The Wire
Join
← Back to Knowledge Base
BLUE TEAM / THREAT HUNT / WINDOWS / EVASION

ETW Tampering

This note documents detection patterns related to ETW Tampering within Windows environments.


Direct Indicators

LogEvent IDMeaningForensic ValueNotes
Security4688Process creationCriticalDetects tampering tool or loader execution.
Sysmon1Process creationCriticalBest lineage source for ETW bypass chains.
Sysmon10Process accessCriticalMemory access into telemetry-producing processes.
Sysmon7Image loadedHighSuspicious helper DLLs or loaders.
PowerShell4104Script block loggingHighReflection-based ETW patch attempts may appear.
Sysmon11File createMediumLoader staged before tampering.

Indirect Indicators

IndicatorWhat To Look ForForensic ValueNotes
Known ETW stringsEtwEventWrite, ntdll, clr.dllCriticalClassic patch footprint.
Sudden telemetry reductionLogging stops after suspicious codeCriticalOperational symptom.
Memory write to ntdll / clrPatch targetCriticalStrong evasion clue.
Reflection patch in PowerShellETW disable in managed runtimeCriticalCommon operator pattern.
Loader then payload with weak logsStrong sequenceHighHigh-confidence clue.
ETW bypass adjacent to AMSI bypassCommon pairingCriticalFramework behavior

Common Tools

ToolUsage
PowerShell loadersReflection ETW patch
Cobalt StrikeETW suppression
custom loadersIn-memory ETW patching
.NET implantsclr ETW tampering

Relevant Artifacts

  • Security Event ID 4688
  • Sysmon Event IDs 1, 10, 7, 11
  • PowerShell 4104
  • Strings:
    • EtwEventWrite
    • clr.dll
    • ntdll.dll
  • Memory patch context
  • EDR telemetry drop

MITRE ATT&CK References

  • T1562.001 Impair Defenses

Decision Tree

  1. Which process?

    • powershell
    • loader
    • implant
  2. Which patch target?

    • ntdll
    • clr
    • managed ETW path
  3. Strings observed?

    • EtwEventWrite
    • patch bytes
  4. Follow-on execution?

    • Injection
    • Beacon
    • Script
  5. Expand:

    • AMSI bypass
    • Defender tampering
    • Loader chain
  6. Scope:

    • Single patch
    • Framework behavior
    • Campaign pattern

Example Detection Templates

KQL

PowerShell
| where EventID == 4104
| where ScriptBlockText has_any ("EtwEventWrite","clr.dll","ntdll")
| project TimeGenerated, Computer, ScriptBlockText
Sysmon
| where EventID == 10
| project TimeGenerated, Computer, SourceImage, TargetImage, GrantedAccess

EQL

process where process.command_line like "*EtwEventWrite*"
sequence by host.name with maxspan=5m
  [ process where process.name == "powershell.exe" ]
  [ process where process.command_line like "*Etw*" ]

Sigma

title: ETW Tampering Detection
id: 3f8a2d15-etw-tampering
status: experimental
description: Detects common ETW tampering strings
references:
  - https://attack.mitre.org/
author: Vergil
date: 2026-03-07
logsource:
  product: windows
  service: powershell
detection:
  selection:
    ScriptBlockText|contains:
      - 'EtwEventWrite'
      - 'clr.dll'
      - 'ntdll'
  condition: selection
fields:
  - ScriptBlockText
falsepositives:
  - Security research
level: high
tags:
  - attack.defense_evasion

Mitigation & Hardening

Control AreaMitigationEffectivenessNotes
Preserve 4104Critical visibilityCriticalCore signal
Watch memory patchingStrong evasion clueCriticalHigh-value
Correlate with AMSI bypassFramework detectionCriticalStrong triage
Alert on ETW stringsLow false positivesHighValuable enrichment
EDR memory analyticsCatch patchingCriticalBest coverage