Que outros comandos o comando passwd envolve?

1

Eu achava que o comando passwd usava o comando mcrypt para criptografar sua entrada, mas é crypt e / ou encrypt ? O código-fonte de crypt / encrypt não está disponível.

Quando não estou confundindo isso - então, em tempos anteriores do Linux, o passwd estava usando o comando mcrypt ? - Quem pode me esclarecer?

Estou perguntando isso porque quero estimular minhas possibilidades de senha.

Para elaborar esta questão:
O comando passwd solicita que sua senha seja inserida e, em segundo plano, sua senha será criptografada depois que você terminar de fornecê-la como entrada. Essa senha criptografada é armazenada no arquivo shadow . Eu estava pensando em dias anteriores esta criptografia foi realizada por mcrypt ? Agora, minha pergunta é: que outros comandos e / ou arquivos o comando passwd envolve além dos da sombra?

    
por dschinn1001 12.08.2013 / 00:52

1 resposta

3

crypt é um utilitário Unix. Do link:

As distribuições Linux geralmente não incluem uma versão compatível com Unix do comando crypt. Isto é em grande parte devido a uma combinação de três fatores principais:

  • o crypt é relativamente obscuro e raramente usado para anexos de e-mail, nem como um formato de arquivo
  • O
  • crypt é considerado muito criptograficamente fraco para suportar ataques de força bruta de sistemas de computação modernos (os sistemas Linux geralmente vêm com o GNU Privacy Guard, que é considerado razoavelmente seguro pelos padrões modernos)
  • Durante os primeiros anos de desenvolvimento e adoção do Linux, havia alguma preocupação de que, mesmo sendo tão fraco quanto o algoritmo usado pela cripta, ele ainda poderia entrar em conflito com os controles de exportação da ITAR [carece de fontes?]; assim, os desenvolvedores de distribuição mainstream nos Estados Unidos geralmente excluíam [e] deixavam seus clientes buscarem GnuPG / GPG ou outro software criptográfico strong de sites internacionais, às vezes fornecendo pacotes ou scripts para automatizar esse processo).

O código-fonte da cripta pode ser encontrado nos Sites de arquivo do Unix .

mcrypt é a versão sucessora / Linux da cripta e estamos usando isso (pelo menos) desde < href="http://packages.ubuntu.com/lucid/mcrypt"> Lucid . Substituição da antiga crypt unix (1) que está nos detalhes do pacote.

O código-fonte do mcrypt pode ser encontrado aqui: mcrypt_2.6.8-1.3_i386.deb em máquinas Intel x86

Mas isso não está instalado em um Ubuntu padrão.

Mas o que você está procurando provavelmente está registrado em ...

/etc/login.defs

Este é o lugar onde os sistemas Linux armazenam o que usar. Por padrão, para o Ubuntu, este é o SHA512. Portanto, isso não é uma criptografia, mas uma senha com hash a partir de $ 6 $.

Exemplo usando sha1sum :

$ echo hello|sha1sum
f572d396fae9206628714fb2ce00f72e94f2258f  -

-

Em relação ao comentário, consulte: link Esse é o chamado para criar a senha a partir do texto sem formatação.

Aqui está uma fonte: link

Código parcial:

switch(encryption)
    {
        case PE_BASE64:
            return _hash_base64(password);
        case PE_BLOWFISH:
            return _hash_blowfish(password, salt, iterations);
        case PE_DES:
            return _hash_des(password, salt);
        case PE_MD5:
            return _hash_md5(password);
        case PE_NONE:
            return _hash_none();
        case PE_SHA1:
            return _hash_sha1(password, salt, iterations);
        case PE_SHA256:
            return _hash_sha256(password, salt);
        case PE_SHA512:
            return _hash_sha512(password, salt);
        case PE_SHMD5:
            return _hash_shmd5(password, salt);
        default:
            errno = ENOSYS;
            _error("encryption", 1);
            return NULL;
    }

todas as funções usadas estão abaixo desse código.

    
por Rinzwind 12.08.2013 / 11:57