反調試——5——檢測調試對象
有一些內容採用的是WRK裡面的定義。因為這個算是沒有公開的文檔,公開的不能這樣使用。
查詢父進程實現反調試
正常打開(雙擊運行)的程式的父進程是explorer.exe(資源管理器)(Windows的內置機制),通過查詢父進程的ID是否是explorer.exe來判斷程式是否被調試了。
這裡我直接上程式碼了。
NTSTATUS
NtQueryInformationProcess(
__in HANDLE ProcessHandle,
__in PROCESSINFOCLASS ProcessInformationClass,
__out_bcount(ProcessInformationLength) PVOID ProcessInformation,
__in ULONG ProcessInformationLength,
__out_opt PULONG ReturnLength
)