• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Debugging

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

Dico

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


Дайте хотябы части :
1) Алгоритм:
2) Отслеживания отладчика
3) Закрытия!
 
Вот код на паскале, в 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
 
При подключении к нашей программе отладчика С++(Attach to process) чтобы программа это могла определить(Незнаю можно ли так). Среда VC++ и отладчик самой VC++!!!
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab