Я хочу запустить процесс с примененным к нему профилем seccomp (можно из C, терминала и т.д.). В частности, я бы хотел, чтобы целевой команде не разрешалось читать и записывать какие-либо файлы, и она могла просто печатать на консоли. Временный контур C, который у меня есть, таков:
int main() {
scmp_filter_ctx filter = load_filter();
seccomp_load(filter);
// execl([sample command with arguments], 0);
execl("ls", 0)
}
У меня проблема в том, что execl
использует некоторые системные вызовы, которые заблокированы в моем профиле. Как я могу гарантировать, что only применяется только к [sample command with arguments]
. Опять же, это не обязательно должно быть на C. По сути, я хочу запустить некоторые исполняемые файлы и применить seccomp
к этим процессам. Я использую Убунту 18.04.