Bit SUID nos diretórios

8

No Linux existem SUID, SGID e sticky bits para permissões de diretório.

Eu sou absolutamente claro sobre o bit pegajoso e SGID em arquivos ou pastas.

Mas o que acontece se eu aplicar o bit SUID em um diretório?

Por exemplo, se eu aplicar um bit SGID em um arquivo, um processo iniciado com esse arquivo usará o ID de grupo efetivo do grupo do arquivo e não o grupo principal do usuário que está chamando o arquivo. A mesma coisa se você aplicar o bit SUID em um arquivo: ele será executado com o proprietário como o usuário efetivo.

Isso muda assim que você aplica o bit SGID em um diretório, por exemplo chmod -R 2770 /var/testdir/. Agora, todos os novos arquivos e pastas que serão criados /var/testdir/herdarão o mesmo grupo, /var/testdir/mesmo que o grupo principal do criador seja diferente. Além disso, os subdiretórios herdarão o bit SGID.

Mas o que acontece se você aplicar o bit SUID em um diretório? Não encontrei nenhuma informação para esse caso.

Além disso, o que acontece se você aplicar o SGID e o SGID na mesma pasta?

O homem
fonte

Respostas:

6

GNU Coreutils: Directory Setuid e Setgid

27.5 Diretórios e os bits Set-User-ID e Set-Group-ID

Na maioria dos sistemas, se o bit set-group-ID de um diretório estiver definido, os subarquivos recém-criados herdam o mesmo grupo do diretório e os subdiretórios recém-criados herdam o bit set-group-ID do diretório pai. Em alguns sistemas, o bit set-user-ID de um diretório tem um efeito semelhante sobre a propriedade de novos subarquivos e os bits set-user-ID de novos subdiretórios. Esses mecanismos permitem que os usuários compartilhem arquivos com mais facilidade, diminuindo a necessidade de usar chmod ou chown para compartilhar novos arquivos.

Steven
fonte
Muito bom, isso é o que eu estava procurando. Nesse caso, acho que o Ubuntu não implementou o bit set-user-ID com o comportamento mencionado para diretórios. Mas vou testar um pouco :) Obrigado
TheMAn