Testssl.sh - Testando criptografia TLS/SSL em qualquer lugar e qualquer porta
testssl.sh é uma ferramenta de linha de comando gratuita, de código aberto e rica em recursos, usada para verificar serviços habilitados para criptografia TLS/SSL em busca de cifras, protocolos e algumas criptografias suportadas. falhas, em servidores Linux/BSD. Pode ser executado em macOS X e Windows usando MSYS2 ou Cygwin.
Recursos do Testssl.sh
- Fácil de instalar e usar; produz uma saída clara.
- Altamente flexível, pode ser usado para verificar serviços habilitados para SSL/TLS e STARTTLS.
- Execute uma verificação geral ou verificações únicas.
- Vem com diversas opções de linha de comando para diversas categorias de verificações únicas.
- Suporta diferentes tipos de saída, incluindo saída colorida.
- Suporta verificação de ID de sessão SSL.
- Suporta verificação de vários certificados de servidor.
- Oferece privacidade absoluta, só você pode ver o resultado, não terceiros.
- Suporta login no formato JSON + CSV (simples).
- Suporta testes em massa nos modos serial (padrão) ou paralelo.
- Suporta predefinição de opções de linha de comando por meio de variáveis de ambiente e muito mais.
Importante: você deve usar o bash (que vem pré-instalado na maioria das distribuições Linux) e uma versão mais recente do OpenSSL (1.1.1) é recomendada para uso eficaz.
Como instalar e usar Testssl.sh no Linux
Você pode instalar o testssl. sh clonando este repositório git conforme mostrado.
git clone --depth 1 https://github.com/drwetter/testssl.sh.git
cd testssl.sh
Após a clonagem de testssl.sh, o caso de uso geral provavelmente será apenas executar o seguinte comando para fazer um teste em um site.
./testssl.sh https://www.google.com/
Para executar uma verificação nos protocolos habilitados para STARTTLS: ftp, smtp, pop3, imap, xmpp, telnet, ldap, postgres, mysql, use a opção -t
.
./testssl.sh -t smtp https://www.google.com/
Por padrão, todos os testes em massa são feitos em modo serial, você pode ativar testes paralelos usando o sinalizador --parallel
.
./testssl.sh --parallel https://www.google.com/
Se você não quiser usar o programa openssl padrão do sistema, use o sinalizador –openssl para especificar uma alternativa.
./testssl.sh --parallel --sneaky --openssl /path/to/your/openssl https://www.google.com/
Você pode querer manter registros para análise posterior, testssl.sh tem o --log
(armazena o arquivo de log no diretório atual) ou --logfile
(especificar a localização do arquivo de log) para isso.
./testssl.sh --parallel --sneaky --logging https://www.google.com/
Para desativar a pesquisa de DNS, o que pode aumentar a velocidade dos testes, use o sinalizador -n
.
./testssl.sh -n --parallel --sneaky --logging https://www.google.com/
Execute verificações únicas usando testessl.sh
Você também pode executar verificações únicas de protocolos, padrões de servidor, preferências de servidor, cabeçalhos, vários tipos de vulnerabilidades e muitos outros testes. Existem várias opções fornecidas para isso.
Por exemplo, o sinalizador -e
permite verificar cada cifra local remotamente. Se você quiser tornar o teste muito mais rápido, inclua o sinalizador --fast
; isso omitirá algumas verificações; caso você esteja usando o openssl para todas as cifras, ele exibirá apenas a primeira cifra oferecida.
./testssl.sh -e --fast --parallel https://www.google.com/
A opção -p
permite testar protocolos TLS/SSL (incluindo SPDY/HTTP2).
./testssl.sh -p --parallel --sneaky https://www.google.com/
Você pode visualizar as escolhas padrão e o certificado do servidor usando a opção -S
.
./testssl.sh -S https://www.google.com/
A seguir, para ver o protocolo + cifra preferido do servidor, use o sinalizador -P
.
./testssl.sh -P https://www.google.com/
A opção -U
ajudará você a testar todas as vulnerabilidades (se aplicável).
./testssl.sh -U --sneaky https://www.google.com/
Infelizmente não podemos explorar todas as opções aqui, use o comando abaixo para ver uma lista de todas as opções.
./testssl.sh --help
Encontre mais no repositório testssl.sh do Github: https://github.com/drwetter/testssl.sh
Conclusão
testssl.sh é uma ferramenta de segurança útil que todo administrador de sistema Linux precisa ter e usar para testar serviços habilitados para TSL/SSL. Se você tiver alguma dúvida ou opinião para compartilhar, use o formulário de comentários abaixo. Além disso, você também pode compartilhar conosco quaisquer ferramentas semelhantes que encontrar por aí.