podemos saber a senha dos outros usuários se tivermos acesso root?

podemos saber a senha dos outros usuários se tivermos acesso root?

Se uma pessoa tiver acesso root a uma máquina RHEL específica, ela conseguirá recuperar a senha dos outros usuários?

Responder1

DR: Não, as senhas são armazenadas como hashes que (em geral) não podem ser recuperadas.

Linux não armazena senhas em texto simples em lugar nenhumpor padrão. Eles são criptografados com hash ou de outra forma por meio de uma variedade de algoritmos. Então, em geral, não, isso não é possível com dados armazenados.

Se você tiver senhas armazenadas em algum lugar diferente do /etc/passwdbanco de dados, elas poderão ser armazenadas de uma forma que permita isso. htpasswdos arquivos podem conter senhas pouco criptografadas e outros aplicativos podem armazenar hashes mais fracos ou senhas de texto simples por vários motivos (normalmente ruins).

Além disso, os arquivos de configuração do usuário podem conter senhas não criptografadas ou senhas pouco protegidas por vários motivos - fetchmail que captura conteúdo de outro serviço, .netrcou coisas simples e automatizadas podem incluir a senha.

Se as senhas forem criptografadas com hash ou com um algoritmo fraco e antigo (3DES, MD5), seria possível descobrir de maneira razoavelmente eficiente/barata qual era a senha - embora atacando os dados em vez de apenas reverter a transformação. (por exemplo: coisas comohttp://project-rainbowcrack.com/ouhttp://www.openwall.com/john/)

Como você é root, também é possível atacar a senha do usuário em outro nível - substitua o binário de login, ou sudo, ou parte do PAM, etc, por algo que irá capturar a senha quando ela for inserida.

Então, especificamente, não, mas em geral ter acesso root torna mais fácil obter detalhes dos usuários por meio de vários canais secundários.

Responder2

Em contraste com algumas outras respostas aqui, eu diria que a resposta simples para esta e muitas outras perguntas que terminam com "se você tiver root" é SIM.

Basicamente, o root pode fazer qualquer coisa na máquina que o próprio sistema possa fazer. O sistema pode aceitar sua senha, então o root pode aceitar sua senha, ou a dele no lugar da sua, com bastante esforço. Mais importante ainda, ele pode simplesmente alterar sua senha ou TORNAR-SE você.

Especificamente, as senhas geralmente são criptografadas. Geralmente é algum tipo de algoritmo "unidirecional", que gera um número (um hash) que pode ser usado para verificar a senha, mas geralmente não para reverter o número e recuperar a senha. Portanto, não se trata apenas de ler um arquivo para obter a senha de alguém.

Dito isto, você PODE ler o histórico do shell e o histórico de login, onde eles provavelmente digitaram a senha em vez do nome de usuário em algum momento, ou digitaram em um shell em vez de em um prompt de senha. Nesse caso, seria texto simples. Isso é perturbadoramente comum em terminais baseados em texto, sem boas soluções que eu conheça.

No entanto, mesmo deixando essa questão de lado, a criptografia “unidirecional” não é realmente unidirecional. Existem muitas ferramentas que passarão por muitas combinações de senhas, criptografando-as com o mesmo processo unilateral, até encontrar uma que corresponda. Eles então sabem a senha que terá acesso (embora como root, eles JÁ tenham acesso, nessa máquina).

Pior ainda, existem tabelas arco-íris, que são respostas pré-computadas para o processo acima: as pessoas já geraram a senha original que vem da senha criptografada fornecida. Usando-os, é uma pesquisa simples - sem necessidade de tentativas demoradas de cracking.

Novamente, o acesso no nível raiz é A coisa a ser protegida. Com isso comprometido, toda a máquina e tudo nela ficam comprometidos. É hora de recomeçar, inclusive informando a todos os seus usuários que não se pode mais confiar em sua empresa para proteger a privacidade deles. E, sim, isso pode significar a falência.

Responder3

Se tiver root, você pode executar um cracker de senha /etc/shadow(assumindo senhas locais e não LDAP ou Kerberos, etc.). Isso pode não ser eficaz se eles escolherem senhas boas e o sistema estiver configurado para usar hashing de senha forte. Mas as senhas do sistema não são armazenadas em texto simples; as senhas não estão disponíveis diretamente nem mesmo para root.

Responder4

Todas as senhas são armazenadas em /etc/shadowarquivo. Você pode abrir este arquivo usando acesso root e ver hash valueessas senhas para cada usuário (até mesmo usuário root).

A menos que você tenha algum tipo de software de descriptografia de senha, não será possível converter esses valores de hash de volta em texto normal.

Mas ainda assim, se você tiver acesso ao usuário root, poderá alterar a senha de qualquer usuário normal usando o seguinte comando e acessar sua conta.

root@localhost$ passwd pradeep

Isso solicitará a nova senha que você deseja definir para o usuário pradeep. Dessa forma, você pode alterar a senha do pradeep.

Agora você pode acessar da conta dele por:

root@localhost$ su pradeep

Isso resultará na mudança para o usuário pradeep e você obterá um terminal como este:

pradeep@localhost$

informação relacionada