Por que a chamada de sistema chroot não está disponível para usuários não root?

8

Eu estava lendo uma descrição sobre setuid na wikipedia http://en.wikipedia.org/wiki/Setuid

Não consegui entender como o chroot está relacionado ao setuid, como mencionado no parágrafo a seguir da wikipedia

A presença de executáveis ​​setuid explica por que a chamada do sistema chroot não está disponível para usuários não raiz no Unix. Veja as limitações do chroot para mais detalhes.

Mr Coder
fonte

Respostas:

11

Se um usuário não privilegiado pudesse executar um programa setuid em uma chrootprisão, ele poderia construí-la cuidadosamente para induzir o programa a escalar privilégios. Por exemplo, posso construir uma chrootprisão na qual tenho permissão para usar sudo, porque posso controlar todos os arquivos de configuração dentro dessa prisão.

David Schwartz
fonte
Ainda acho totalmente que a expressão na página da Wikipedia poderia ser reescrita para realmente expressar isso.
Florin Asăvoaie
A seção de limitações do artigo sobre chroot entra em mais detalhes, como diz o trecho.
David Schwartz
8
@FlorinAsavoaie: A coisa agradável sobre wikipedia é que, se você acha que "ele poderia ser escrito isso e aquilo", você tem direito a fazê-lo :)
phresnel