Por que os usuários podem excluir arquivos uns dos outros neste caso?

2

Eu tenho dois usuários: bob e sally, que possuem, respectivamente, dois arquivos: bob100 e sally100:

> ls -altrh /path/to/dir : 

-rw-r--r--. 1 bob   test    0 Jan  7 12:59 bob100
-rw-r--r--. 1 sally test    0 Jan  7 13:06 sally100
drwxrwxrwx. 8 root  root 4.1K Jan  7 13:06 .

No entanto, o BOB pode excluir arquivos da conta do SALLY:

> runuser -l bob -c 'rm -f /path/to/dir/sally100'

Por que bob é permitido excluir um arquivo que claramente só tem permissões de gravação?

    
por jayunit100 07.01.2014 / 19:23

2 respostas

7

Porque o grupo / outros têm permissões de gravação em um diretório pai. A exclusão de arquivos está, na verdade, desvinculando-o do diretório. O diretório está sendo modificado, não o arquivo.

    
por 07.01.2014 / 19:25
0

Se você deseja proteger os arquivos em um diretório compartilhado, defina o sticky bit no diretório (por exemplo, chmod +t mydir ). Quando o sticky bit é definido para um diretório, somente 'root' ou o proprietário de um arquivo pode desvinculá-lo (excluí-lo). Normalmente, este bit está ativo para /tmp e /var/tmp .

    
por 07.01.2014 / 20:43