Permissões de arquivos as vezes geram duvidas quanto sua correta aplicacao. Isso ocorre pelo não entendimento de alguns detalhes importantes do sistema de permissões de arquivos.

gafanhoto@backup:~$ ls -l
-rwxr----- 1 gafanhoto estagiarios 0 2008-05-04 23:42 arquivoprivado
gafanhoto@backup:~$

gafanhoto@backup:~$ cat arquivoprivado
#!/bin/bash
echo "$0 foi executado"
gafanhoto@backup:~$

Geralmente as permissões de “arquivoprivado” são lidas da seguinte forma:

1 – O usuario gafanhoto tem permissoes de leitura, escrita e execucao deste arquivo.
2 – Os usuarios do grupo “estagiarios” só tem permissão de leitura e nao pode modificar ou executar este arquivo.
3 – Os demais usuarios não tem qualquer permissão sobre o arquivo. Não podem lê-lo, escrevê-lo, apaga-lo ou executa-lo.

Correto? Não, ERRADO!!!

Os “estagiarios” podem executar este arquivo pois o bit de execução do arquivo diz respeito à sua capacidade de execucao direta (vide shebang).

barata@backup:/home/gafanhoto$ ./arquivoprivado
-sh: ./arquivoprivado: Permission denied
barata@backup:/home/gafanhoto$

barata@backup:/home/gafanhoto$ /bin/bash arquivoprivado
arquivoprivado foi executado
barata@backup:/home/gafanhoto$

Leave a Reply