Suspicious Windows NT API Hooking
Description
Identifies attempts to hook certain memory section mapping related APIs with suspicious properties. This may indicate an attempt to evade defense leveraging API hooking.
Query · eql
api where process.Ext.api.name == "WriteProcessMemory" and process.Ext.api.behaviors == "hook_api" and
process.Ext.api.summary : "* Self,*" and
process.Ext.api.summary like
("*ntdll.dll!??CreateSection*", "*ntdll.dll!??OpenSection*", "*ntdll.dll!??Close*", "*ntdll.dll!??MapViewOfSection*", "*ntdll.dll!??UnmapViewOfSection*") and
process.Ext.api.parameters.size == 21 and
not process.Ext.api.behaviors in ("cross-process", "parent-child") and process.thread.Ext.call_stack_final_user_module.name != "Kernel" and
not (process.code_signature.status == "trusted" and startswith~(process.thread.Ext.call_stack_final_user_module.name, process.name)) and
not process.thread.Ext.call_stack_final_user_module.path like
("?:\\program files\\*.dll",
"?:\\program files (x86)\\*.dll",
"\\program files\\*.dll",
"\\program files (x86)\\*.dll",
"?:\\windows\\sys?????\\hmpalert.dll",
"?:\\windows\\system32\\*\\tmmon*.dll*",
"?:\\windows\\sys?????\\esensordbi.dll*",
"?:\\windows\\system32\\umppc*.dll*",
"?:\\windows\\fireeye\\appmonitordll*.dll*",
"?:\\windows\\apppatch\\apppatch*\\exploitblocker.dll*")