私はできます。
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
(使用もオプションではありませんのでご注意ください)
答え1
いくつかの提案をしただけで、今すぐ試してみる方法はありません...ただ投稿自体から推測するだけです。
解決策の提案は次のとおりです。
最上位のプロセスIDが$ pidにあり、ps -T
プロセスツリーもLinuxに提供されているとします(今はLinuxにアクセスできません)。
for eachpid in $(ps -T "$pid" | awk '{print $1}' | grep -v 'PID')
do
auditctl -a always,exit -S all -F pid=$eachpid >somelog_${eachpid}.log 2>&1
done
もちろんps -T "$pid"
、Linuxで動作しない場合は、Linuxに対応するものに置き換えてください(または、「pstree -p」出力をawk-ingして見つけた場合、pidは角かっこの間に表示されます)。