You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Produce Sigma create_remote_thread events from Kernel-Process thread-start records when the ETW header process differs from the payload target process.
Source and measured cost
Source: Microsoft-Windows-Kernel-Process, thread-start event 3 with keyword 0x20.
A controlled CreateRemoteThread record identified the source PID in the ETW header and the target PID and thread ID in the payload, together with raw start addresses.
The idle lab produced 184 thread starts per minute, or 3.07 events per second.
Processing should consist primarily of bounded, in-memory process and module lookups.
Microsoft-Windows-Threat-Intelligence was not usable by the elevated non-PPL consumer, so it is not part of this implementation.
Scope
Enable the Kernel-Process thread keyword and filter to event 3.
Emit only when the header source PID differs from the payload target PID.
Resolve source and target through lifetime-aware process state.
Populate SourceImage, TargetImage, applicable parent and command-line fields, and raw StartAddress without fabricating missing values.
Add a bounded target-module range lookup for conditional StartModule support.
Keep StartFunction conditional until bounded PE export resolution exists.
Expose stream volume, enrichment misses, and event-loss counters.
Example Sigma coverage
Twelve of the fifteen pinned rules can select using source/target identity or raw start address. Examples include:
Summary
Follow-up to #485.
Produce Sigma
create_remote_threadevents from Kernel-Process thread-start records when the ETW header process differs from the payload target process.Source and measured cost
Microsoft-Windows-Kernel-Process, thread-start event 3 with keyword0x20.CreateRemoteThreadrecord identified the source PID in the ETW header and the target PID and thread ID in the payload, together with raw start addresses.Microsoft-Windows-Threat-Intelligencewas not usable by the elevated non-PPL consumer, so it is not part of this implementation.Scope
SourceImage,TargetImage, applicable parent and command-line fields, and rawStartAddresswithout fabricating missing values.StartModulesupport.StartFunctionconditional until bounded PE export resolution exists.Example Sigma coverage
Twelve of the fifteen pinned rules can select using source/target identity or raw start address. Examples include:
lsass.exe.Three rules positively require
StartModuleorStartFunctionand remain conditional until the corresponding enrichment is available.Acceptance criteria