
Analizzatore crittografico multi-protocollo per l'audit di TLS, SSL, SSH, IKE, DNSSEC e degli header di sicurezza HTTP. Rileva oltre 400 suite di cifratura, genera impronte JA3/HASSH e identifica vulnerabilità come DROWN e Terrapin tramite CLI e API Python.
CryptoLyzer è un analizzatore di protocolli crittografici di server (TLS, SSL, SSH, IKE, DNSSEC) e delle relative impostazioni (intestazioni HTTP, record DNS), rapido, flessibile e completo, nonché un generatore di fingerprint (JA3, HASSH) con interfacce API e CLI.
Usa CryptoLyzer quando devi verificare le suite di cifratura TLS/SSL — a differenza di testssl.sh e sslyze, rileva oltre 400 suite di cifratura, inclusi gli algoritmi GOST e post-quantistici, tramite un'implementazione protocollare personalizzata indipendente da OpenSSL.
Usa CryptoLyzer quando devi verificare gli algoritmi SSH — come ssh-audit, rileva algoritmi crittografici, parametri di scambio dei gruppi Diffie-Hellman e chiavi host, coprendo in modo unico anche i certificati host e X.509 (V00, V01).
Usa CryptoLyzer quando ti serve un unico strumento per l'analisi di TLS, SSH, IKE, DNS e HTTP — a differenza degli strumenti specifici per protocollo, copre tutte le principali superfici di attacco crittografiche in un'unica CLI e API Python unificate.
Usa CryptoLyzer quando devi individuare vulnerabilità crittografiche (D(HE)at, DROWN, FREAK, Logjam, Lucky Thirteen, Sweet32, Terrapin) — identifica problemi che gli strumenti basati su OpenSSL non rilevano, perché implementa i protocolli in modo indipendente.
La CLI offre tre formati di output. L'output leggibile dall'uomo colora i nomi degli algoritmi e le dimensioni delle chiavi in base alla robustezza di sicurezza, usando il sistema di valutazione a semaforo. L'output Markdown può essere convogliato in Pandoc per generare report DOCX/PDF. L'output JSON consente l'elaborazione automatica e l'automazione delle pipeline.
Il punto di forza di CryptoLyzer rispetto ai concorrenti è che contiene un'implementazione personalizzata dei protocolli crittografici (CryptoParser), supportata dal database di identificazione degli algoritmi più completo disponibile (CryptoDataHub). Questo rende possibile verificare il supporto di algoritmi raramente usati, obsoleti, non standard o sperimentali che non sono supportati da alcuna versione di OpenSSL, GnuTLS, LibreSSL o wolfSSL. Di conseguenza, CryptoLyzer riconosce più suite di cifratura TLS di quante siano elencate in totale su Ciphersuite Info.
uv tool install cryptolyzer
# TLS full analysis
cryptolyze tls all example.com
# SSH full analysis
cryptolyze ssh all example.com
# IKE version analysis
cryptolyze ike versions example.com
# IKE protocol extension detection
cryptolyze ike extensions example.com
# IKE server public key extraction
cryptolyze ike pubkeys example.com
# IKE accepted certification authority hashes
cryptolyze ike pubkeyreq example.com
# HTTP security headers
cryptolyze http headers example.com
# DNS: DNSSEC records
cryptolyze dns dnssec example.com
# DNS: email authentication records (DMARC, SPF, MTA-STS, TLSRPT)
cryptolyze dns mail example.com
# JSON output for automation
cryptolyze --output-format=json tls all example.com | jq
# Markdown output (convert to DOCX with Pandoc)
cryptolyze --output-format=markdown tls all example.com \
| pandoc --from markdown --to docx --output report.docx
# Parallel analysis for multiple targets
cryptolyze --parallel 2 tls versions tls://dns.google tls://one.one.one.one
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 — agisci come server TLS per catturare le fingerprint dei client che si connettono:
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 — agisci come server SSH per catturare le fingerprint dei client che si connettono:
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]
Implementazioni Python
Sistemi operativi
La documentazione dettagliata è disponibile sul sito del progetto su Read the Docs.
Il codice è disponibile secondo i termini della Mozilla Public License Version 2.0 (MPL 2.0).
Una descrizione non esaustiva ma chiara della MPL 2.0 è disponibile sul sito Choose an open source license.
Questo progetto è finanziato tramite NGI Zero Core, un fondo istituito da NLnet con il supporto finanziario del programma Next Generation Internet della Commissione Europea. Ulteriori informazioni sono disponibili nella pagina del progetto NLnet.
| Funzionalità | CryptoLyzer | testssl.sh | sslyze | ssh-audit |
|---|
| Analisi TLS/SSL | ✓ | ✓ | ✓ | ✗ |
| Analisi SSH | ✓ | ✗ | ✗ | ✓ |
| Analisi IKE | parziale | ✗ | ✗ | ✗ |
| Intestazioni di sicurezza HTTP | ✓ | parziale | ✗ | ✗ |
| Record DNS (DNSSEC, DMARC, SPF, …) | ✓ | ✗ | ✗ | ✗ |
| Oltre 400 suite di cifratura (incl. GOST, post-quantistiche) | ✓ | ✗ | ✗ | n/a |
| Generazione fingerprint JA3 / HASSH | ✓ | ✗ | ✗ | ✗ |
| API Python | ✓ | ✗ | ✓ | ✗ |
| Supporto Windows | ✓ | ✗ | ✓ | ✓ |