eu posso fazer
auditctl -a always,exit -S all -F pid=1234
Para registrar todas as chamadas do sistema feitas pelo pid 1234 e:
auditctl -a always,exit -S all -F ppid=1234
Para seus filhos, mas como faço para cobrir também os netos e seus filhos (atuais e futuros)?
Não posso confiar em (e) uid / (e) gid que mudam.
(observe que o uso strace
também não é uma opção)
linux
audit
linux-audit
Stéphane Chazelas
fonte
fonte
strace -s
^^ mas depois vi quem estava perguntando e soube imediatamente "ele já sabia disso!") ... Stephane, você pode talvez: 1) crie a lista de pids usando a opção "tree" do ps, 2) execute auditctl (s) em todos os pids listados na árvore? (ou seja, você pode ter vários "pid = ...."? ou múltiplos auditctl, cada um em um?) ou a maneira "burra": auditctl tudo, e algum tipo de egrep no "pid | pid | pid" se eles aparecem em cada linha) (ressalva: eu não tenho acesso a linux atm, então eu não tenho idéia de como informações sobre aparecer)?Respostas:
Apenas propondo algo sem ter como experimentá-lo agora ... mas apenas adivinhando a partir do próprio post
Aqui está uma proposta de solução:
Supondo que o ID do processo mais alto esteja em $ pid, e que no linux também
ps -T
forneça a árvore de processos (não posso ter acesso ao linux no momento)Obviamente, substitua
ps -T "$pid"
pelo equivalente ao Linux, se ele não funcionar no Linux (ou encontre-o ativando a saída "pstree -p", o pid estará entre parênteses)fonte