Begrijpen van Windows Event Tracing_ETW

  • Begrijpen van Windows Event Tracing_ETW

Begrijpen van ETW

Na het schiften van enkele onnodige informatie, raadpleeg het volledige document: https://docs.microsoft.com/en-us/windows/win32/etw/event-tracing-portal

Basis begrijpen

https://learn.microsoft.com/en-us/windows/win32/etw/about-event-tracing

Architectuur

Sessie

Er bestaan vier soorten sessies

Sessie soort Gebruik Beperkingen Kenmerken
Event Tracing Session(Standard ETW) 1. EVENT_TRACE_PROPERTIES2. StartTrace, een sessie maken3. EnableTrace 1. EnableTrace voor classic provider 2. EnableTraceEx voor manifest-based provider4. ControlTrace een sessie stoppen - Een manifest-based provider ondersteunt slechts het leveren van gebeurtenissen aan maximaal 8 sessies- Een classic provider kan slechts één sessie bedienen.- Het gedrag van provider-overname door sessie is ’later komt eerst'. Standaard ETW.
SystemTraceProvider Session 1. EVENT_TRACE_PROPERTIES->EnableFlags2. StartTrace3. ControlTrace een sessie stoppen - SystemTraceProvider is een kernelgebeurtenisprovider die een set voorgedefinieerde kernelgebeurtenissen levert.- NT Kernel Logger sessie is een systeemvoorgedefinieerde sessie die een reeks systeemvoorgedefinieerde kernelgebeurtenissen registreert.- Win7/WinServer2008R2 alleen NT Kernel Logger sessie kan SystemTraceProvider gebruiken- Win8/WinServer2012 kan SystemTraceProvider gebeurtenissen leveren aan 8 logger sessies, waarvan er twee vast zijn voor NT Kernel Logger en Circular Kernel Context Logger.- Win10 20348 en later kunnen verschillende System providers afzonderlijk worden gecontroleerd. Systeem kernel voorgedefinieerde gebeurtenissen verkrijgen.
AutoLogger sessie 1. Registery aanpassen 2. EnableTraceEx3. ControlTrace een sessie stoppen - Global Logger Sessie is een speciale onafhankelijke sessie die gebeurtenissen registreert tijdens het opstarten van het systeem.- Normale AutoLogger moet de provider zelf inschakelen, GlobleLogger niet.- AutoLogger ondersteunt geen NT Kernel Logger gebeurtenissen, alleen GlobalLogger ondersteunt dat.- Beïnvloedt de opstarttijd, matig gebruik Gebeurtenissen tijdens het opstarten van het besturingssysteem vastleggen
Private Logger Session - - User-mode ETW- Alleen binnen het proces gebruikt- Wordt niet meegerekend in de limiet van 64 gelijktijdige sessies. Proces prive

Hulpmiddelen

  • logman
  • wevtutil
    • Voorbeeld van xpath-query: wevtutil qe Security /c:2 /q:"*[System[EventID=5157]]" /f:text
  • tracelog
    • Gebruik het tracelog hulpmiddel van viusal studio, dat dynamisch ETW Provider kan toevoegen en verwijderen tijdens runtime, en ook ETW Session dynamisch kan toevoegen en verwijderen
  • mc
  • etw-providers-docs