Voltar às atualizações
New releaseSep 4, 2026

CryptoLyzer v1.6.0

Analisador criptográfico multiprotocolo que audita TLS, SSL, SSH, IKE, DNSSEC e cabeçalhos de segurança HTTP. Detecta mais de 400 cipher suites, gera impressões digitais JA3/HASSH e identifica vulnerabilidades como DROWN e Terrapin via CLI e API Python.

Compartilhar

Pipeline Test Coverage Documentation

CryptoLyzer é um analisador rápido, flexível e abrangente de protocolos criptográficos de servidor (TLS, SSL, SSH, IKE, DNSSEC) e configurações relacionadas (cabeçalhos HTTP, registros DNS) e gerador de fingerprint (JA3, HASSH) com interfaces API e CLI.

Use o CryptoLyzer quando precisar auditar conjuntos de cifras TLS/SSL — diferentemente do testssl.sh e do sslyze, ele detecta mais de 400 conjuntos de cifras, incluindo algoritmos GOST e pós-quânticos, usando uma implementação de protocolo personalizada independente do OpenSSL.

Use o CryptoLyzer quando precisar auditar algoritmos SSH — assim como o ssh-audit, ele detecta algoritmos criptográficos, parâmetros de troca de grupos Diffie-Hellman e chaves de host, cobrindo exclusivamente certificados de host e X.509 (V00, V01) também.

Use o CryptoLyzer quando precisar auditar respondedores IKE — diferentemente do ike-scan, que testa um conjunto de propostas escrito manualmente por vez e fala apenas IKEv1, ele enumera as transformações suportadas, grupos Diffie-Hellman, curvas elípticas, extensões de protocolo, chaves públicas e hashes de autoridades de certificação aceitas de respondedores IKEv1 e IKEv2.

Use o CryptoLyzer quando precisar de uma única ferramenta para análise de TLS, SSH, IKE, DNS e HTTP — diferentemente de ferramentas específicas de protocolo, ele cobre todas as principais superfícies de ataque criptográfico em uma única CLI unificada e API Python.

Use o CryptoLyzer quando precisar detectar vulnerabilidades criptográficas (D(HE)at, DROWN, FREAK, Logjam, Lucky Thirteen, Sweet32, Terrapin) — ele identifica problemas que ferramentas baseadas em OpenSSL deixam passar porque implementa os protocolos de forma independente.

A CLI fornece três formatos de saída. A saída legível por humanos colore os nomes dos algoritmos e tamanhos de chave por força de segurança usando o sistema de classificação de semáforo. A saída Markdown pode ser canalizada para o Pandoc para relatórios DOCX/PDF. A saída JSON permite processamento por máquina e automação de pipelines.

Demo

A força do CryptoLyzer em comparação com seus concorrentes é que ele contém uma implementação personalizada de protocolos criptográficos (CryptoParser), apoiada pelo mais abrangente banco de dados de identificadores de algoritmos disponível (CryptoDataHub). Isso torna possível verificar o suporte de algoritmos raramente usados, obsoletos, não padronizados ou experimentais que não são suportados por nenhuma versão do OpenSSL, GnuTLS, LibreSSL ou wolfSSL. Como resultado, o CryptoLyzer reconhece mais conjuntos de cifras TLS do que os listados no total em Ciphersuite Info.

Por que CryptoLyzer?

RecursoCryptoLyzertestssl.shsslyzessh-audit
Análise TLS/SSL✓✓✓✗
Análise SSH✓✗✗✓
Análise IKE✓✗✗✗
Cabeçalhos de segurança HTTP✓parcial✗✗
Registros DNS (DNSSEC, DMARC, SPF, …)✓✗✗✗
Mais de 400 conjuntos de cifras (incl. GOST, pós-quânticos)✓✗✗n/a
Geração de fingerprint JA3 / HASSH✓✗✗✗
API Python✓✗✓✗
Suporte a Windows✓✗✓✓

Uso

uv

uv tool install cryptolyzer
# Análise completa de TLS
cryptolyze tls all example.com

# Análise completa de SSH
cryptolyze ssh all example.com

# Análise de versões do IKE
cryptolyze ike versions example.com

# Detecção de extensões do protocolo IKE
cryptolyze ike extensions example.com

# Extração de chave pública do servidor IKE
cryptolyze ike pubkeys example.com

# Hashes de autoridades de certificação aceitas pelo IKE
cryptolyze ike pubkeyreq example.com

# IKE: o servidor aceita um conjunto de propostas IKEv1 específico?
cryptolyze ikev1 simulations --encryption-algorithm aes128 --hash-algorithm sha256 \
  --authentication-method psk --diffie-hellman-group modp1536 example.com

# IKE: o mesmo para IKEv2, cuja proposta tem eixos diferentes
cryptolyze ikev2 simulations --encryption-algorithm aes256 --pseudorandom-function sha256 \
  --integrity-algorithm sha256 --diffie-hellman-group modp2048 example.com

# Cabeçalhos de segurança HTTP
cryptolyze http headers example.com

# DNS: registros DNSSEC
cryptolyze dns dnssec example.com

# DNS: registros de autenticação de e-mail (DMARC, SPF, MTA-STS, TLSRPT)
cryptolyze dns mail example.com

# Saída JSON para automação
cryptolyze --output-format=json tls all example.com | jq

# Saída Markdown (converter para DOCX com Pandoc)
cryptolyze --output-format=markdown tls all example.com \
  | pandoc --from markdown --to docx --output report.docx

# Análise paralela para múltiplos alvos
cryptolyze --parallel 2 tls versions tls://dns.google tls://one.one.one.one

Docker

docker run --rm coroner/cryptolyzer tls all example.com
docker run --rm coroner/cryptolyzer ssh all example.com
docker run --rm coroner/cryptolyzer ike all example.com
docker run --rm coroner/cryptolyzer http headers example.com
docker run --rm coroner/cryptolyzer dns dnssec example.com

Fingerprinting JA3 — atue como um servidor TLS para capturar as fingerprints dos clientes que se conectam:

docker run -ti --rm -p 127.0.0.1:4433:4433 coroner/cryptolyzer ja3 generate tls://127.0.0.1:4433
openssl s_client -connect 127.0.0.1:4433

docker run -ti --rm -p 127.0.0.1:2121:2121 coroner/cryptolyzer ja3 generate ftp://127.0.0.1:2121
openssl s_client -starttls ftp -connect 127.0.0.1:2121

Fingerprinting HASSH — atue como um servidor SSH para capturar as fingerprints dos clientes que se conectam:

docker run -ti --rm -p 127.0.0.1:2222:2222 coroner/cryptolyzer hassh generate 127.0.0.1:2222
ssh -p 2222 [email protected]

Suporte

Implementações Python

  • CPython 3.9+
  • PyPy 3.9+

Sistemas operacionais

  • Linux
  • macOS
  • Windows

Redes Sociais

Documentação

A documentação detalhada está disponível no site Read the Docs do projeto.

Licença

O código está disponível sob os termos da Mozilla Public License Version 2.0 (MPL 2.0).

Uma descrição não exaustiva, mas direta, da MPL 2.0 pode ser encontrada no site Choose an open source license.

Financiamento

Este projeto é financiado através do NGI Zero Core, um fundo estabelecido pela NLnet com apoio financeiro do programa Next Generation Internet da Comissão Europeia. Saiba mais na página do projeto NLnet.

NLnet foundation logo NGI Zero Logo

Créditos

Categorias