• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Debugging

  • Автор темы Dico
  • Дата начала
Статус
Закрыто для дальнейших ответов.
D

Dico

Как определить в программе на С/С++,запущена она в среде отладчика или работает в обычном режиме, и если обнаружен отладчик, программа выводедит сообщение и завершить свое выполнение.


Дайте хотябы части :
1) Алгоритм:
2) Отслеживания отладчика
3) Закрытия!
 
Z

zubr

Вот код на паскале, в C сами переведете.
Код:
function DebugTest: boolean;
type
TDebugProc = function: boolean; stdcall;
var
Kernel32: HMODULE;
DebugProc: TDebugProc;
begin
Result := False;
Kernel32 := GetModuleHandle('kernel32.dll');
if Kernel32 <> 0 then
begin
 @DebugProc := GetProcAddress(Kernel32, 'IsDebuggerPresent');
 if Assigned(DebugProc) then
  Result := DebugProc;
end;
end;
Если программа в отладке функция выдает True. Работает в Win98, 2000, XP
 
D

Dico

При подключении к нашей программе отладчика С++(Attach to process) чтобы программа это могла определить(Незнаю можно ли так). Среда VC++ и отладчик самой VC++!!!
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!