Files
capa-rules/nursery/check-for-process-debug-object.yml
Willi BallenthinandMike Hunhoff c1d20764ad use "span of calls" scope (#973)
* use sequence scope instead of thread scope for "static: function" rules

* use sequence scope instead of thread scope for "static: basic block" rules

* make runtime linking rules more concise

* doc: describe sequence scope

* rename "sequence" scope to "span of calls" scope

* Update anti-analysis/anti-av/check-for-sandbox-and-av-modules.yml

Co-authored-by: Mike Hunhoff <[email protected]>

* Update anti-analysis/anti-vm/vm-detection/check-for-windows-sandbox-via-device.yml

Co-authored-by: Mike Hunhoff <[email protected]>

* Update collection/get-geographical-location.yml

Co-authored-by: Mike Hunhoff <[email protected]>

* Update collection/file-managers/gather-classicftp-information.yml

Co-authored-by: Mike Hunhoff <[email protected]>

* Update collection/database/wmi/reference-wmi-statements.yml

Co-authored-by: Mike Hunhoff <[email protected]>

* Update collection/database/sql/reference-sql-statements.yml

Co-authored-by: Mike Hunhoff <[email protected]>

---------

Co-authored-by: Mike Hunhoff <[email protected]>
2025-01-29 10:27:13 +01:00

32 lines
1.0 KiB
YAML

rule:
meta:
name: check for process debug object
namespace: anti-analysis/anti-debugging/debugger-detection
authors:
- [email protected]
scopes:
static: function
dynamic: span of calls
mbc:
- Anti-Behavioral Analysis::Debugger Detection::NtQueryInformationProcess [B0001.012]
references:
- https://github.com/LordNoteworthy/al-khaser/blob/master/al-khaser/AntiDebug/NtQueryInformationProcess_ProcessDebugObject.cpp
features:
- and:
- or:
- api: kernel32.GetCurrentProcess
- api: System.Diagnostics.Process::GetCurrentProcess
- or:
- basic block:
- and:
- or:
- api: NtQueryInformationProcess
- api: ZwQueryInformationProcess
- number: 0x1E = ProcessDebugObjectHandle
- call:
- and:
- or:
- api: NtQueryInformationProcess
- api: ZwQueryInformationProcess
- number: 0x1E = ProcessDebugObjectHandle