• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

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++!!!
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

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