Como usar cap_dac_override da libcap

Como usar cap_dac_override da libcap

Estou tentando testar cap_dac_override. Eu escrevi um simples olá mundo. Compilei o programa e removi todas as permissões do executável.

Neste momento não consigo executar meu programa executando ./hello o que está correto. Agora eu gostaria de aplicar um recurso para que o programa ainda possa ser executado mesmo que o usuário não tenha permissão de execução.

Posso perguntar como configurar cap_dac_override para que ainda possa executar o programa ou estou usando cap_dac_override completamente errado?

setcap cap_dac_override=ep hello

Responder1

Você está confundindo capacidades e permissões.

Obits de modo de arquivooupermissõesdescrevero que pode ser feito com um arquivo. Ao remover todas as permissões de um arquivo, você instruiu o sistema operacional que não deseja que ninguém leia, grave ou execute-o.

Os recursos de arquivo, por outro lado, descrevemo que um arquivo pode fazerou, para ser exato, o que um processo originado desse arquivo de programa pode fazer, o que de outra forma não seria capaz de fazer.

Com setcap cap_dac_override=ep hellovocê permitiu que o programa hellosubstituísse as verificações usuais de permissão ao ser executado. Mas isso não muda o fato de que as verificações de permissão usuais são aplicadas ao tentar executar arquivos hello.

informação relacionada