Permissions - Listagem uid

0

Pergunta em duas partes:

  • O que é um diretório e um arquivo graváveis pelo mundo?
  • Estou procurando um script que exiba os diretórios em todas as partições de um servidor, que não sejam de propriedade de root ou de uma conta do sistema. Em nosso ambiente, todos os diretórios graváveis do mundo devem ser de propriedade de root ou de outra conta do sistema.
por rob 16.12.2013 / 15:45

2 respostas

0

  1. arquivos graváveis pelo mundo são arquivos para os quais qualquer pessoa pode escrever. Independentemente de quem eles são. Isso é considerado um problema de segurança em que uma pessoa aleatória do outro lado do mundo que tem acesso ao seu sistema pode abusar. Imagine que algum software que use / tmp (= gravável pelo mundo por design) também esteja ouvindo dados de entrada em / tmp.

    Existe uma coisa extra: sticky bit . O uso mais comum do bit pegajoso hoje é nos diretórios. Quando o bit pegajoso é definido, somente o proprietário do item, o proprietário do diretório ou o superusuário pode renomear ou excluir arquivos. Sem o conjunto de bits fixos, qualquer usuário com permissões de gravação e execução para o diretório pode renomear ou excluir arquivos contidos, independentemente do proprietário.

  2. Isso imprimirá todos os arquivos graváveis do mundo que não tiverem seu conjunto de bits fixos.

    find / -xdev -type d \( -perm -0002 -a ! -perm -1000 \) -print
    

    Isso também imprimirá todos os arquivos graváveis do mundo:

    find / -perm -2 ! -type l -ls
    
por Rinzwind 16.12.2013 / 16:21
0

Eu acho que você quer esse script

#!/bin/bash
uids='awk -F ":" '{print $3}' /etc/passwd'
for i in $uids; do
    if [ $i -gt 500 ]; then
            find / -uid $i -perm -002 -type d 2>/dev/null
    fi
done

Ele obtém os uids do arquivo passwd e os percorre, e se o uid for maior que 500, ele ativará os diretórios com esse uid e outro conjunto de bits graváveis.

    
por falconer 16.12.2013 / 16:45