Capabilities do Linux
O que é Capabilities do Linux?
Capabilities do LinuxFuncionalidade do kernel Linux baseada no rascunho POSIX.1e que divide o privilegio omnipotente do root em mais de 40 capabilities discretas, atribuiveis de forma independente a processos e ficheiros.
As capabilities do Linux foram introduzidas no kernel 2.2 para quebrar a divisao binaria entre utilizador sem privilegios e root omnipotente. O kernel expoe cerca de 40 privilegios discretos — CAP_NET_BIND_SERVICE, CAP_SYS_ADMIN, CAP_NET_ADMIN, CAP_DAC_OVERRIDE, CAP_SYS_PTRACE, etc. — que podem ser concedidos a processos ou marcados em executaveis como file capabilities. Seguem o rascunho POSIX.1e. As ferramentas userspace incluidas com a libcap sao o capsh (inspecionar e manipular o conjunto de capabilities de uma shell), o getcap e o setcap (ler ou atribuir capabilities a ficheiros) e o getpcaps. Runtimes como Docker e containerd concedem por predefinicao um subconjunto (sem CAP_SYS_ADMIN, mantendo CAP_NET_BIND_SERVICE) e os Pod Security Standards do Kubernetes restringem-nas ainda mais. As capabilities sao a base do menor privilegio em servidores Linux e workloads CNCF.
● Exemplos
- 01
Conceder apenas CAP_NET_BIND_SERVICE a um processo nao-root para escutar no porto TCP 80 sem ser root.
- 02
Usar "capsh --print" dentro de um contentor para confirmar que o CAP_SYS_ADMIN foi removido.
● Perguntas frequentes
O que é Capabilities do Linux?
Funcionalidade do kernel Linux baseada no rascunho POSIX.1e que divide o privilegio omnipotente do root em mais de 40 capabilities discretas, atribuiveis de forma independente a processos e ficheiros. Pertence à categoria Identidade e acesso da cibersegurança.
O que significa Capabilities do Linux?
Funcionalidade do kernel Linux baseada no rascunho POSIX.1e que divide o privilegio omnipotente do root em mais de 40 capabilities discretas, atribuiveis de forma independente a processos e ficheiros.
Como funciona Capabilities do Linux?
As capabilities do Linux foram introduzidas no kernel 2.2 para quebrar a divisao binaria entre utilizador sem privilegios e root omnipotente. O kernel expoe cerca de 40 privilegios discretos — CAP_NET_BIND_SERVICE, CAP_SYS_ADMIN, CAP_NET_ADMIN, CAP_DAC_OVERRIDE, CAP_SYS_PTRACE, etc. — que podem ser concedidos a processos ou marcados em executaveis como file capabilities. Seguem o rascunho POSIX.1e. As ferramentas userspace incluidas com a libcap sao o capsh (inspecionar e manipular o conjunto de capabilities de uma shell), o getcap e o setcap (ler ou atribuir capabilities a ficheiros) e o getpcaps. Runtimes como Docker e containerd concedem por predefinicao um subconjunto (sem CAP_SYS_ADMIN, mantendo CAP_NET_BIND_SERVICE) e os Pod Security Standards do Kubernetes restringem-nas ainda mais. As capabilities sao a base do menor privilegio em servidores Linux e workloads CNCF.
Como se defender contra Capabilities do Linux?
As defesas contra Capabilities do Linux costumam combinar controles técnicos e práticas operacionais, conforme detalhado na definição acima.
Quais são outros nomes para Capabilities do Linux?
Nomes alternativos comuns: capabilities POSIX, caps Linux.
● Termos relacionados
- identity-access№ 120
BPF LSM
Modulo de Seguranca do Linux que permite a programas eBPF verificados ligar-se a hooks LSM e aplicar decisoes personalizadas de controlo de acesso obrigatorio sobre syscalls, ficheiros, sockets e capabilities.
- identity-access№ 585
Modo Kernel vs Modo Utilizador
Os dois niveis de privilegio de CPU aplicados pelos sistemas operativos modernos: modo kernel (supervisor, ring 0) com acesso completo ao hardware, e modo utilizador (ring 3) restrito ao seu espaco de enderecos e a instrucoes limitadas.
- cloud-security№ 600
Segurança do Kubernetes
Proteção de um cluster Kubernetes — API server, plano de controlo, nós, workloads e rede — contra configurações incorretas, comprometimento e movimentação lateral.
- vulnerabilities№ 860
Escalada de privilégios
Classe de vulnerabilidades que permite a um atacante obter permissões superiores às concedidas inicialmente, por exemplo passar de utilizador normal a administrador.
- cryptography№ 1006
SELinux
Security-Enhanced Linux, framework de controlo de acesso obrigatorio desenvolvido pela NSA, implementado via hooks LSM e politica de type enforcement.
● Veja também
- № 367Seguranca com eBPF