我使用seccomp
过滤器来限制进程进行的系统调用。使用系统调用白名单来允许和禁止系统调用是可以理解的。我坚持使用ptrace
规则生成的seccomp
事件的概念。例如,我可以不允许open
,但我想在ptrace
系统调用上生成open
事件,以便我可以确定进程是否可以打开该文件。我的具体问题是如何捕捉seccomp生成的ptrace事件?任何帮助或参考都是一大幸事。
我谦虚地用谷歌搜索,但没有找到任何帮助和运行的例子。
最佳答案
你需要有一个单独的程序来追踪次品。这个追踪器将调用
ptrace(PTRACE_SETOPTIONS, tracee_pid, 0, PTRACE_O_TRACESECCOMP);
请求通知,并调用
waitpid(tracee_pid, &status, __WALL);
需要通知。当
waitpid
返回时,分析status
,并通过 unsigned long data;
ptrace(PTRACE_GETEVENTMSG, tracee_pid, 0, &data);
关于c - seccomp如何处理ptrace事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35182056/