Как я могу найти все системные вызовы, которые должны быть внесены в белый список для seccomp? - PullRequest
0 голосов
/ 01 июля 2018

У меня есть существующая программа, которую я хотел бы поместить в изолированную программную среду, используя seccomp (v2).

Как узнать, какие правила seccomp мне нужно разрешить для программы?


Я пытался добавить seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(…), 0) для всех системных вызовов, напечатанных strace -xfc a.out, но, видимо, этого было недостаточно, так как я все еще получаю «SIGSYS, Bad system call», когда я запускаю программу с seccomp.

1 Ответ

0 голосов
/ 01 июля 2018

Вероятно, наиболее надежным способом является переключение вашего фильтра seccomp, чтобы он возвращал SECCOMP_RET_TRAP ("отправка подхватываемой SIGSYS при ошибке"), а не SECCOMP_RET_KILL ("убить процесс с помощью неуловимой SIGSYS"), а затем выведите siginfo_t из обработчика сигнала, затем совершите самоубийство.

...