LINUX
Limita syscalls con seccomp
Un contenedor puede llamar a cualquier función del kernel por defecto, y muchas ni las necesita.
seccomp le pone un filtro que solo permite las llamadas al sistema que el programa realmente usa, bloqueando el resto. Docker trae un perfil por defecto, pero puedes darle uno más estricto con menos menos security-opt.
Menos syscalls disponibles significa menos superficie para explotar el kernel desde dentro del contenedor. Es confinamiento a nivel de llamadas del sistema.
Combínalo con drop de capabilities.
# los comandos
root@srv:~# docker run --security-opt seccomp=perfil-estricto.json --cap-drop ALL miappcopiarroot@srv:~# docker run --rm alpine unshare -r 2>&1copiarunshare: Operation not permitted (bloqueado)