명령어/Linux

[RHEL] autrace 감사 서브시스템으로 프로세스 추적

jykim23 2026. 8. 4. 22:53
반응형

부제: 한 프로그램의 시스템콜을 auditd로 통째로 잡아 기록한다

autrace /bin/ls /tmp          # ls 실행을 감사로 추적
ausearch -p <PID> -i          # 추적 결과를 사람이 읽게 조회

autrace는 strace와 목적이 비슷하지만, ptrace가 아니라 커널 audit 서브시스템을 통해 대상 프로그램이 부르는 시스템콜과 접근을 기록한다. 실행하면 지정한 명령을 끝까지 돌린 뒤, 그 프로세스가 남긴 audit 이벤트를 ausearch로 뽑아 보라고 안내한다. 주의할 점이 있다. autrace는 추적을 위해 기존 audit 규칙을 잠시 걷어내므로, 운영 중인 감사 정책이 있는 시스템에서는 실행 전 규칙 백업이 사실상 필수다. 그래서 조회용이 아니라 문제 재현 환경에서 신중히 쓴다.

데비안에서도 audit 패키지에 포함돼 동일하게 동작한다. 다만 일상 디버깅에서는 대개 strace가 먼저 손에 잡히고, autrace는 "감사 기록으로 남겨야 할 때" 고르는 카드다.

이렇게도 쓴다

추적 후 해당 PID의 이벤트를 시간대로 좁혀 읽는다(조합).

autrace /bin/ls /tmp; ausearch --start recent -p <PID> -i

 

파일 접근만 골라 무엇을 열었는지 본다(조합).

autrace /usr/bin/id; ausearch -p <PID> -sc openat -i

 

실행 전 현재 audit 규칙을 백업해 둔다(조합).

auditctl -l > /root/audit-rules.bak; autrace /bin/ls

 

추적 결과를 요약 리포트로 훑는다(조합).

autrace /usr/bin/whoami; aureport --syscall

 

strace와 대조해 두 관점을 함께 본다(조합).

strace -c /bin/ls >/dev/null; autrace /bin/ls
반응형