я могу сделать
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
тоже не вариант)
linux
audit
linux-audit
Стефан Шазелас
источник
источник
strace -s
^^, но потом я увидел, кто спрашивал, и сразу понял, что "он это уже знает!") ... Стефан, вы можете возможно: 1) построить список pids, используя опцию «tree» ps, 2) запустить auditctl (s) для всех pids, перечисленных в дереве? (то есть, у вас может быть несколько «pid = ....»? или несколько audctl, каждый по одному?) или «тупой» способ: audctl everything, и какой-то egrep для «pid | pid | pid», если они появляются в каждой строке?) (предостережение: у меня нет доступа к linux atm, поэтому я понятия не имею, как появляется информация)Ответы:
Просто предлагая что-то, не имея возможности попробовать это прямо сейчас ... но просто догадываясь из самого поста
Вот предложение решения:
Предполагая, что самый верхний идентификатор процесса находится в $ pid, и что в linux также
ps -T
выдает дерево процессов (в настоящее время у меня нет доступа к linux)Конечно, замените
ps -T "$pid"
его эквивалентом для linux, если тот не работает на linux (или найдите его, запустив вывод «pstree -p», pid будет в скобках)источник