BPF LSM
¿Qué es BPF LSM?
BPF LSMModulo de Seguridad de Linux que permite a programas eBPF verificados engancharse a hooks LSM y aplicar decisiones de control de acceso obligatorio sobre syscalls, ficheros, sockets y capabilities.
BPF LSM (BPF Linux Security Module) se integro en Linux 5.7 (2020), liderado por KP Singh y otros de Google. El framework LSM define cientos de hooks de seguridad en el kernel (inode_permission, socket_connect, bprm_check, file_open, capable, etc.) a los que se enganchan los LSM tradicionales como SELinux, AppArmor, Smack y Tomoyo. BPF LSM permite a programas eBPF verificados engancharse a esos mismos hooks en tiempo de ejecucion, de modo que los operadores entregan politica como bytecode compilado en vez de parchear el kernel. Herramientas como Cilium Tetragon, KubeArmor y bpfd lo usan para aplicar controles MAC —por ejemplo, denegar execve de binarios en /tmp dentro de un contenedor o bloquear ptrace sobre un proceso sensible— manteniendo la carga en caliente y la consciencia de cgroups. Complementa, no reemplaza, a SELinux y AppArmor.
● Ejemplos
- 01
Cargar un programa BPF LSM via KubeArmor que niega execve de cualquier binario fuera de /usr/bin dentro de un pod de Kubernetes.
- 02
Usar Tetragon para denegar un intento de ptrace contra un proceso protegido mediante el hook bpf/security_ptrace_access_check.
● Preguntas frecuentes
¿Qué es BPF LSM?
Modulo de Seguridad de Linux que permite a programas eBPF verificados engancharse a hooks LSM y aplicar decisiones de control de acceso obligatorio sobre syscalls, ficheros, sockets y capabilities. Pertenece a la categoría de Identidad y acceso en ciberseguridad.
¿Qué significa BPF LSM?
Modulo de Seguridad de Linux que permite a programas eBPF verificados engancharse a hooks LSM y aplicar decisiones de control de acceso obligatorio sobre syscalls, ficheros, sockets y capabilities.
¿Cómo funciona BPF LSM?
BPF LSM (BPF Linux Security Module) se integro en Linux 5.7 (2020), liderado por KP Singh y otros de Google. El framework LSM define cientos de hooks de seguridad en el kernel (inode_permission, socket_connect, bprm_check, file_open, capable, etc.) a los que se enganchan los LSM tradicionales como SELinux, AppArmor, Smack y Tomoyo. BPF LSM permite a programas eBPF verificados engancharse a esos mismos hooks en tiempo de ejecucion, de modo que los operadores entregan politica como bytecode compilado en vez de parchear el kernel. Herramientas como Cilium Tetragon, KubeArmor y bpfd lo usan para aplicar controles MAC —por ejemplo, denegar execve de binarios en /tmp dentro de un contenedor o bloquear ptrace sobre un proceso sensible— manteniendo la carga en caliente y la consciencia de cgroups. Complementa, no reemplaza, a SELinux y AppArmor.
¿Cómo defenderse de BPF LSM?
Las defensas contra BPF LSM combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.
¿Cuáles son otros nombres para BPF LSM?
Nombres alternativos comunes: LSM BPF, eBPF LSM.
● Términos relacionados
- defense-ops№ 367
Seguridad con eBPF
Uso de programas eBPF (extended Berkeley Packet Filter) que se ejecutan en el kernel Linux para aportar observabilidad y aplicacion de politicas sobre procesos, red y syscalls.
- identity-access№ 615
Capacidades de Linux
Funcionalidad del kernel Linux basada en el borrador POSIX.1e que divide el privilegio total de root en mas de 40 capacidades discretas asignables de forma independiente a procesos y ficheros.
- identity-access№ 585
Modo Kernel vs Modo Usuario
Los dos niveles de privilegio de CPU que aplican los sistemas operativos modernos: modo kernel (supervisor, anillo 0) con acceso completo al hardware, y modo usuario (anillo 3) limitado a su espacio de direcciones y a instrucciones no privilegiadas.
- cryptography№ 1006
SELinux
Security-Enhanced Linux, marco de control de acceso obligatorio desarrollado por la NSA e implementado mediante los hooks LSM y una politica de type enforcement.
- cryptography№ 053
AppArmor
Sistema de control de acceso obligatorio basado en rutas para Linux, usado por Ubuntu y SUSE como alternativa mas simple a SELinux para confinar programas individuales.
- cloud-security№ 600
Seguridad de Kubernetes
Protección de un cluster de Kubernetes —su API server, plano de control, nodos, cargas y red— frente a configuraciones erróneas, compromisos y movimiento lateral.