Como verificar senha no shell script

Publicado por Cézar Campos em 29/01/2019

[ Hits: 606 ]

 


Como verificar senha no shell script



Olá tudo bem? Se por alguma razão bem aleatória você quer pôr uma senha no seu shell script para dar acesso a determinada função, ou qualquer outra coisa (só depende de você), dá para verificar se ela está correta sem colocar a sua senha de verdade no código-fonte.

Método ERRADO

Aqui vou testar a autenticidade que, por incrível que pareça é bastante comum de se ver por aí.

#!bin/sh
echo Digite a sua senha...
read senha
if [ $senha -eq "102374" ] ; then
echo "Senha correta"
else
echo "Senha ERRADA!"
fi

Por que este método é errado? Colocar a senha em texto puro no script é uma tremenda falha de segurança, qualquer espertinho pode dar um grep no seu script e localizá-la. Mas como verificar a senha sem expô-la no shell script? Usando uma soma de verificação.

Sinta-se livre para testar o código abaixo e digite a mesma senha que estava exposta no código acima.

#!bin/sh
echo Digite a sua senha...
read senha
echo "dbbe235510a12c4ceea53cfa2150859e  senha" > senha.md5
echo $senha > senha
md5sum -c --status senha.md5
if [ $? -eq 0 ] ; then
echo "Senha correta"
else
echo "Senha ERRADA!"
fi
rm senha.md5 senha

Viu como funciona? Foi criado uma forma de verificação da senha ao invés de expor no código fonte o seu conteúdo cru. Bem mais seguro, sem falar que você pode usar verificações ainda mais pesadas como SHA256 ou SHA512.

Criando a soma de verificação

Para criar a soma de verificação da sua senha é simples. Faça no terminal:

echo sua_senha > arquivoqualquer

e depois:

md5sum arquivoqualquer

que vai sair com a soma de verificação da sua senha para você pô-la no código-fonte.

Outras dicas deste autor

Você deixa a porta aberta?

Leitura recomendada

Descobrir o MAC address de um IP com arping

Iniciando automaticamente o Firestarter com o modo gráfico sem senha

Renomeando Konsole

Formatando números no shell com zeros à esquerda

Solução IM para seu Cyber Cafe

  

Comentários
[1] Comentário enviado por edivandjs em 29/01/2019 - 13:54h

Muito legal, principalmente pra mim que estou iniciando no mundo da programação.

[2] Comentário enviado por hrcerq em 05/02/2019 - 23:06h

Boa dica. Eu não sei em qual shell você usou ou criou esse script. Mas no bash ainda poderia usar a opção "-s" do comando read, pra evitar que algum "espertinho" fique olhando pra sua tela enquanto você digita a senha. Infelizmente essa opção não faz parte do padrão posix.

---

Atenciosamente,
Hugo Cerqueira

Devuan - https://devuan.org/

[3] Comentário enviado por Cizordj em 06/02/2019 - 11:26h


[2] Comentário enviado por hrcerq em 05/02/2019 - 23:06h

Boa dica. Eu não sei em qual shell você usou ou criou esse script. Mas no bash ainda poderia usar a opção "-s" do comando read, pra evitar que algum "espertinho" fique olhando pra sua tela enquanto você digita a senha. Infelizmente essa opção não faz parte do padrão posix.

Obrigado Hugo pelo detalhe que faltou rsrs eu não sabia desse parâmetro do read (se sabia também é porque me esqueci). Mas sim, realmente contribui pro script ficar mais seguro.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts