Как предотвратить отладку системного вызова другим процессом с помощью ptrace - PullRequest
0 голосов
/ 07 мая 2020

В ptrace я могу отладить другой процесс для вывода всех номеров системных вызовов, которые вызывает удаленный процесс.l, с помощью этих шагов.

  1. Присоединитесь к процессу с помощью PTRACE_ATTACH.
  2. waitpid (с флагами __WALL), чтобы убедиться, что удаленный процесс остановлен.
  3. In while (cond ) print в регистре, в котором хранится номер системного вызова с помощью PTRACE_PEEKUSER

Как удаленный процесс может предотвратить это? Есть ли какой-либо сигнал, что он может зарегистрироваться и напечатать «Хватит отладить меня !!» ??

PTRACE_ATTACH отправляет SIGSTOP для удаленного процесса, но процесс не может с этим справиться. И PTRACE_PEEKUSER не отправляет никаких сигналов удаленному процессу.

...