[英]How to get the return code of the syscall using SECCOMP_RET_DATA and PTRACE_GETEVENTMSG
[英]seccomp how to handle ptrace events
我正在使用seccomp
筛选器来限制进程进行的系统调用。 最多可以使用系统调用白名单来允许和禁止系统调用。 我坚持使用seccomp
规则生成的ptrace
事件的概念。 例如,我可以禁止open
但是我想在open
系统调用时生成ptrace
事件,以便可以确定进程是否可以打开该文件。 我的具体问题是如何捕获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);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.