ls -l /etc/passwd
dá
$ ls -l /etc/passwd
-rw-r--r-- 1 root root 1862 2011-06-15 21:59 /etc/passwd
Assim, um usuário comum pode ler o arquivo. Isso é uma brecha na segurança?
Os hashes de senha reais são armazenados /etc/shadow
, o que não é legível por usuários regulares. /etc/passwd
contém outras informações sobre IDs de usuário e shells que devem ser legíveis por todos os usuários para que o sistema funcione.
/etc/shadow
. Os BSDs usam/etc/master.passwd
. Solaris usa/etc/security/passwd
. Usos HP-UX/.secure/etc/passwd
e a lista continua ...Normalmente, as senhas com hash são armazenadas na
/etc/shadow
maioria dos sistemas Linux:(Eles são armazenados em
/etc/master.passwd
em sistemas BSD .)Os programas que precisam executar autenticação ainda precisam ser executados com
root
privilégios:Se você não gostar dos
setuid root
programas e de um único arquivo contendo todas as senhas com hash do sistema, poderá substituí-lo pelo módulo Openwall TCB PAM . Isso fornece a cada usuário seu próprio arquivo para armazenar sua senha com hash - como resultado, o número desetuid root
programas no sistema pode ser drasticamente reduzido.fonte
As senhas não são armazenadas
/etc/passwd
há anos; o nome é herdado, a função de ser o banco de dados local do usuário permanece e deve ser legível por todos para esse fim.fonte
Até certo ponto, é possível identificar usuários. No passado, você também pode pegar suas senhas. No entanto, aquele que realmente vale a pena quebrar é
root
conhecido sem o arquivo de senhas.A utilidade de ter o mundo dos arquivos de senhas legível geralmente supera em muito o risco. Mesmo que não fosse legível pelo mundo, um
getent passwd
comando em funcionamento tornaria o ganho de segurança nulo.A capacidade de usuários não raiz identificarem arquivos pertencentes a terceiros desapareceria. Ser capaz de identificar arquivos pertencentes (usuário no arquivo passwd) e não proprietário (usuário não no arquivo passwd) pode ser útil na revisão do conteúdo de um sistema de arquivos. Embora fosse possível resolver isso com
setuid
programas apropriados , isso adicionaria um enorme vetor de ataque por meio desses programas.No final, é uma questão de equilíbrio e, neste caso, eu diria que o equilíbrio está firmemente em ter a senha do mundo legível.
fonte