리버싱

ptrace(PTRACE_TRACEME, ...)

y2h000123 2022. 1. 22. 17:18

리버싱을 할때 다음과 같은 명령어를 확인 할 수 있었다.

구글링을 해보니 ptrace(PTRACE_TRACEME, ...)라는 함수는 자기 자신을 추적가능 상태로 만든다고 한다.

 

디버깅을 시작하면 해당 프로세스에 attach 하게 되고, 만약 디버깅 되고 있는 프로그램이 ptrace(PTRACE_TRACEME, ...) 함수를 사용하여 자기 자신에게 attach를 시도하게 되면 한 프로세스에 여러 프로세스가 접속할 수 없으므로 오류가 생기기 때문에 안티 디버깅 기법으로 사용할 수 있다고 한다.

 

참고 : https://markengine.tistory.com/308