Voltar à lista
Linux x86_64Segurança#446

landlock_restrict_self

Aplica um ruleset Landlock ao processo chamador, restringindo-o de forma irreversível.

Descrição

Como `prctl(PR_SET_NO_NEW_PRIVS)`, é uma restrição de mão única: uma vez aplicada, nem o processo nem seus descendentes podem escapar dela — apenas empilhar restrições adicionais.

Header: linux/landlock.hman 2Desde o kernel 5.13

Nota

Normalmente exige que o processo já tenha `no_new_privs` habilitado (via prctl), a menos que rode como root com os privilégios adequados.

Assinatura

int landlock_restrict_self(int ruleset_fd, __u32 flags);

Parâmetros

ParâmetroTipoDescrição
ruleset_fdintDescritor do ruleset a aplicar.
flags__u32Reservado; deve ser 0.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1ruleset_fdint
rsiargumento 2flags__u32

Valor de retorno

0 em sucesso; -1 em erro, com errno definido.

Códigos de erro (errno)

EINVAL(22)
Argumento inválido.
E2BIG(7)
Lista de argumentos grande demais.
EBADF(9)
Descritor de arquivo inválido.
EBADFD(77)
Descritor de arquivo em estado inválido para a operação.
EPERM(1)
Operação não permitida (falta de privilégio).

Relacionadas