Секкомп
-
Основы seccomp
- seccomp — это средство безопасности в ядре Linux, которое позволяет процессам переходить в безопасное состояние.
- В безопасном состоянии процессы могут выполнять только определенные системные вызовы.
- Если процесс попытается выполнить другие системные вызовы, ядро может завершить его или зарегистрировать событие.
-
Использование seccomp
- Режим seccomp включается с помощью системных вызовов prctl или seccomp.
- В некоторых версиях ядра seccomp отключает инструкцию RDTSC, которая используется для точного измерения времени.
-
Расширение seccomp-bpf
- seccomp-bpf позволяет фильтровать системные вызовы с помощью правил пакетной фильтрации Berkeley.
- Используется в OpenSSH, vsftpd, Google Chrome/Chromium и других приложениях.
-
История seccomp
- Разработан Андреа Арканджели в 2005 году для использования в грид-вычислениях.
- Объединен с ядром Linux в версии 2.6.12.
-
Программное обеспечение, использующее seccomp
- Android 8.0 Oreo использует seccomp-bpf в zygote.
- systemd использует опции песочницы на основе seccomp.
- QEMU и KVM используют seccomp для параметра —sandbox.
- Docker использует seccomp для изолированных контейнеров.
- Firejail, Chrome, Snap, vsftpd и другие используют seccomp-bpf для изоляции приложений.
-
Рекомендации и ссылки
- Ссылки на официальный сайт и документацию по seccomp.
- Упоминание платформы seccomp-nurse для песочницы.
- Углубленный анализ безопасности программного обеспечения Linux.