#include #include #include #include #include #include #include int main(int argc, char *argv[]) { int pid = 0, wait_fils = 0, nmb_instruction = 0; printf("** Simple Debugger ptrace() **\n\n"); switch(pid=fork()) { case -1: printf("\t[-]Erreur\n"); break; case 0: ptrace(PTRACE_TRACEME, 0, 0, 0); execl("/bin/ls", "ls", NULL); break; default: wait(&wait_fils); while(wait_fils == 1407) { nmb_instruction++; ptrace(PTRACE_SINGLESTEP, pid, 0, 0); wait(&wait_fils); } } printf("Blahhhhhh: %d\n\n", nmb_instruction); return 0; }