1

我有一个现有程序,我想使用 seccomp (v2) 进行沙箱处理。

我怎样才能找到我需要为程序允许的 seccomp 规则?


我已经尝试添加seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(…), 0)由 打印的所有系统调用strace -xfc a.out,但显然这还不够,因为当我使用 seccomp 运行程序时,我仍然收到“SIGSYS,错误的系统调用”。

4

1 回答 1

3

可能最可靠的方法是将您的 seccomp 过滤器切换为返回SECCOMP_RET_TRAP(“SIGSYS在错误时发送可捕获”)而不是SECCOMP_RET_KILL(“以不可捕获的方式终止进程SIGSYS”),然后从信号处理程序中打印siginfo_t出来,然后自杀。

于 2018-07-01T16:24:44.300 回答