DLL Loaded via a CallBack Function
Description
Identifies attempts to load a DLL indirectly using thread pool callback functions. This may be the result of an evasion attempt to obscure the call origin.
Query · eql
library where
process.thread.Ext.call_stack_summary == "ntdll.dll|kernel32.dll|ntdll.dll" and
_arraysearch(process.thread.Ext.call_stack, $entry,
$entry.symbol_info : ("?:\\Windows\\Sys*\\ntdll.dll!TpReleaseCleanupGroupMembers*",
"?:\\Windows\\Sys*\\ntdll.dll!RtlDeregisterWaitEx*",
"?:\\Windows\\Sys*\\ntdll.dll!TppWorkpExecuteCallback*",
"?:\\Windows\\Sys*\\ntdll.dll!TppWorkerThread*")) and
_arraysearch(process.thread.Ext.call_stack, $entry, $entry.symbol_info : "?:\\Windows\\Sys*\\ntdll.dll!LdrLoadDll*")