سؤال حول كتابة Plugin لتجاوز دالة IsDebuggerPresent
#8
(03-04-2020, 01:56 PM)Hs32-Idir كتب :
كود :
function GetProcessIsBeingDebugged(ProcessHandle: THandle; var IsBeingDebugged: Boolean): Boolean; var DebugPort: PVOID; TargetProcessHandle: THandle; SourceProcessHandle: THandle; DuplicateResult: BOOL; DesiredAccess: ACCESS_MASK; begin Result := False; try if (@NtQueryInformationProcess <> nil) then begin DuplicateResult := False; TargetProcessHandle := 0; DuplicateResult := DuplicateHandle(GetCurrentProcess(), ProcessHandle, GetCurrentProcess(), @TargetProcessHandle, 0, False, DUPLICATE_SAME_ACCESS); if DuplicateResult then begin try if NtQueryInformationProcess( TargetProcessHandle, 7, @DebugPort, SizeOf(PVOID), nil ) = 0 then Result := True; if DebugPort <> nil then IsBeingDebugged := True; finally if TargetProcessHandle <> 0 then CloseHandle(TargetProcessHandle); end; end; end; except end; end;

شكرا استاذ
لماذا ضاعفت الهاندل ؟
الرد


الردود في هذا الموضوع
RE: سؤال حول كتابة Plugin لتجاوز دالة IsDebuggerPresent - بواسطة حسن لطفى - 03-04-2020, 10:07 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم