내가 할 수있는
auditctl -a always,exit -S all -F pid=1234
pid 1234에 의해 수행 된 모든 시스템 호출을 기록하려면 다음을 수행하십시오.
auditctl -a always,exit -S all -F ppid=1234
자녀들을 위해, 어떻게 손자와 자녀들 (현재와 미래)을 커버합니까?
나는 변화하는 (e) uid / (e) gid에 의존 할 수 없다.
(사용 strace
도 옵션이 아닙니다)
당신이 사용할 수있는 트릭 (다시 한번, 감사의 세부 사항을 알지 못하거나 현재 시도 할 수 없음) : 최상위 부모를 시작할 때 특정 환경 변수를 지정 하고이 변수 세트가있는 모든 프로세스를 auditctl합니까?
—
Olivier Dulac
@OlivierDulac은 프로세스를 어떤 식 으로든 표시합니다 (어린이가 상속 함)는 내가 염두에 두어야 할 것입니다. 그러나 감사 규칙과 일치시킬 수있는 항목의 목록은 매우 얇습니다 (심지어 sid, pgid ...). SELinux 일 수도 있지만 SELinux에 대한 첫 번째 사실을 모르겠습니다. 프로세스 네임 스페이스일까요?
—
Stéphane Chazelas
아마도 최상위 부모가 자체 프로세스 그룹에있을 수 있습니까? ( en.wikipedia.org/wiki/Process_group )
—
Olivier Dulac
선택의 여지가 있다면 특정 컨테이너에서 프로그램을 실행할 수 있다고 생각했습니다. 이 버그 스레드를 올바르게 이해 하면 커널 ≥3.13에서 작동합니다. 그 외에는 SELinux 및 감사 UID 이외의 방법이 없습니다 . 사용 사례에 AUID를 적용 할 수 있습니까?
—
Gilles 'SO- 악마 그만해
strace -s
것을 알고 즉시 요구했다 ^^하지만 I 톱과 "그는 이미 알고!") ... 스테판, 수 있습니다 당신은 아마도 : 1) ps의 "tree"옵션을 사용하여 pid 목록을 작성하십시오. 2) 트리에 나열된 모든 pid에서 auditctl을 시작합니까? (즉, 여러 개의 "pid = ...."? 또는 여러 개의 auditctl을 각각 하나씩 가질 수 있습니까?) 또는 "dumb"방식 : auditctl 모든 것 및 "pid | pid | pid"에 대한 일종의 egrep 그들은 각각의 행에 표시) (주의를 : 나는 정보를 정기적으로 표시하는 방법을 몰라 그래서 내가), 기압 리눅스에 액세스 할 수 없습니다?