BPF LSM
Что такое BPF LSM?
BPF LSMМодуль безопасности Linux, позволяющий верифицированным eBPF-программам подключаться к LSM-хукам и применять пользовательские правила обязательного контроля доступа к системным вызовам, файлам, сокетам и capability.
BPF LSM (BPF Linux Security Module) был принят в Linux 5.7 (2020), его разработку возглавили KP Singh и другие инженеры Google. Каркас Linux Security Module определяет сотни хуков безопасности в ядре (inode_permission, socket_connect, bprm_check, file_open, capable и др.), на которых строятся традиционные LSM — SELinux, AppArmor, Smack, Tomoyo. BPF LSM позволяет верифицированным eBPF-программам подключаться к тем же хукам в рантайме, чтобы доставлять политику в виде скомпилированного байткода, а не патчей ядра. Инструменты Cilium Tetragon, KubeArmor и bpfd используют BPF LSM для MAC-контроля: запрет execve бинарей из /tmp в контейнере, блокировка ptrace для чувствительного процесса и т. п. — с горячей загрузкой и учётом cgroups. BPF LSM дополняет SELinux и AppArmor, а не заменяет их.
● Примеры
- 01
Загрузка через KubeArmor программы BPF LSM, запрещающей execve бинарей вне /usr/bin внутри пода Kubernetes.
- 02
Использование Tetragon для отказа в ptrace к усиленному процессу через хук bpf/security_ptrace_access_check.
● Частые вопросы
Что такое BPF LSM?
Модуль безопасности Linux, позволяющий верифицированным eBPF-программам подключаться к LSM-хукам и применять пользовательские правила обязательного контроля доступа к системным вызовам, файлам, сокетам и capability. Относится к категории Идентификация и доступ в кибербезопасности.
Что означает BPF LSM?
Модуль безопасности Linux, позволяющий верифицированным eBPF-программам подключаться к LSM-хукам и применять пользовательские правила обязательного контроля доступа к системным вызовам, файлам, сокетам и capability.
Как работает BPF LSM?
BPF LSM (BPF Linux Security Module) был принят в Linux 5.7 (2020), его разработку возглавили KP Singh и другие инженеры Google. Каркас Linux Security Module определяет сотни хуков безопасности в ядре (inode_permission, socket_connect, bprm_check, file_open, capable и др.), на которых строятся традиционные LSM — SELinux, AppArmor, Smack, Tomoyo. BPF LSM позволяет верифицированным eBPF-программам подключаться к тем же хукам в рантайме, чтобы доставлять политику в виде скомпилированного байткода, а не патчей ядра. Инструменты Cilium Tetragon, KubeArmor и bpfd используют BPF LSM для MAC-контроля: запрет execve бинарей из /tmp в контейнере, блокировка ptrace для чувствительного процесса и т. п. — с горячей загрузкой и учётом cgroups. BPF LSM дополняет SELinux и AppArmor, а не заменяет их.
Как защититься от BPF LSM?
Защита от BPF LSM обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия BPF LSM?
Распространённые альтернативные названия: LSM BPF, eBPF LSM.
● Связанные термины
- defense-ops№ 367
eBPF-безопасность
Использование программ eBPF (extended Berkeley Packet Filter), выполняемых в ядре Linux, для глубокой наблюдаемости и применения политик к процессам, сетевому трафику и системным вызовам.
- identity-access№ 615
Linux Capabilities
Функция ядра Linux на базе черновика POSIX.1e, разбивающая всемогущие права root на более чем 40 дискретных привилегий, выдаваемых процессам и файлам по отдельности.
- identity-access№ 585
Режимы ядра и пользователя
Два уровня привилегий CPU, обеспечиваемые современными ОС: режим ядра (supervisor, ring 0) с полным доступом к оборудованию и пользовательский режим (ring 3), ограниченный своим адресным пространством и непривилегированными инструкциями.
- cryptography№ 1006
SELinux
Security-Enhanced Linux — фреймворк обязательного контроля доступа, разработанный АНБ США и реализованный через LSM-хуки и политику type enforcement.
- cryptography№ 053
AppArmor
Система обязательного контроля доступа для Linux на основе путей; в Ubuntu и SUSE применяется как более простая альтернатива SELinux для ограничения отдельных программ.
- cloud-security№ 600
Безопасность Kubernetes
Защита кластера Kubernetes — API-сервера, control plane, узлов, рабочих нагрузок и сети — от ошибок конфигурации, компрометации и латерального перемещения.