← retour aux outils back to tools

# sslyze

Scanner rapide de configuration SSL/TLS. Teste les suites de chiffrement, la validité des certificats, les versions de protocole, HSTS, l'OCSP stapling, la reprise de session et les vulnérabilités TLS connues (BEAST, POODLE, Heartbleed). Fast SSL/TLS configuration scanner. Tests cipher suites, certificate validity, protocol versions, HSTS, OCSP stapling, session resumption, and known TLS vulnerabilities (BEAST, POODLE, Heartbleed).

↗ https://github.com/nabla-c0d3/sslyze

## Overview

SSLyze is a fast and powerful SSL/TLS scanner that analyzes the TLS configuration of a server. It checks for weak cipher suites, certificate issues, protocol version support, and known vulnerabilities — providing a comprehensive security assessment of TLS deployments.

## Basic Usage

Basic scan

    sslyze target.com

Scan specific port

    sslyze target.com:8443

Comprehensive scan

    sslyze --regular target.com

JSON output

    sslyze --json_out results.json target.com

## Scan Options

Check all cipher suites

    sslyze --sslv2 --sslv3 --tlsv1 --tlsv1_1 --tlsv1_2 --tlsv1_3 target.com

Certificate info

    sslyze --certinfo target.com

    # Check for specific vulnerabilities
    sslyze --heartbleed target.com
    sslyze --robot target.com
    sslyze --openssl_ccs target.com

HTTP security headers (HSTS)

    sslyze --http_headers target.com

Session resumption

    sslyze --resum target.com

Comprehensive (all above)

    sslyze --regular target.com

## What `--regular` Checks

    sslyze --regular target.com

→ Includes: - Certificate info and chain - TLS 1.0, 1.1, 1.2, 1.3 support - Cipher suite enumeration - ROBOT vulnerability - Heartbleed - OpenSSL CCS injection - Session resumption - HTTP headers (HSTS) - OCSP stapling - Elliptic curve support

## Multiple Targets

Scan multiple hosts

    sslyze target1.com target2.com target3.com

Read from file

    sslyze --targets_in targets.txt

Scan entire subnet (with port)

    for ip in 10.10.10.{1..254}; do sslyze $ip:443 2>/dev/null; done

## JSON Output

Save to JSON

    sslyze --json_out results.json --regular target.com

    # Parse for cipher suites
    cat results.json | python3 -c "
    import json, sys
    data = json.load(sys.stdin)
    for host in data['server_scan_results']:
        print(host['server_location']['hostname'])
    "

## Tips

- Use `--regular` for a balanced scan covering all important checks
- SSLv2/3 and TLS 1.0/1.1 are deprecated — flag any server still supporting them
- Check for certificate chain issues — missing intermediates cause client errors
- HSTS preloading absence is worth noting for HTTPS sites
- For quick cipher audit: `sslyze --sslv2 --sslv3 --tlsv1 target.com` to find old protocols
- Compare against testssl.sh for a second opinion on TLS configuration

Help / Man page

    sslyze [options] host[:port]

    --regular       Run full scan (most checks)
    --certinfo      Certificate info
    --sslv2         Test SSLv2
    --sslv3         Test SSLv3
    --tlsv1         Test TLS 1.0
    --tlsv1_1       Test TLS 1.1
    --tlsv1_2       Test TLS 1.2
    --tlsv1_3       Test TLS 1.3
    --heartbleed    Check for Heartbleed
    --robot         Check for ROBOT attack
    --http_headers  Check HTTP security headers
    --resum         Test session resumption
    --json_out F    JSON output file
    --targets_in F  File with targets

## Vue d’ensemble

SSLyze est un scanner SSL/TLS rapide et puissant qui analyse la configuration TLS d’un serveur. Il vérifie les suites de chiffrement faibles, les problèmes de certificat, le support des versions de protocole, et les vulnérabilités connues : offrant une évaluation de sécurité complète des déploiements TLS.

## Utilisation de base

    # Scan basique
    sslyze target.com

    # Scanner un port spécifique
    sslyze target.com:8443

    # Scan complet
    sslyze --regular target.com

    # Sortie JSON
    sslyze --json_out results.json target.com

## Options de scan

    # Vérifier toutes les suites de chiffrement
    sslyze --sslv2 --sslv3 --tlsv1 --tlsv1_1 --tlsv1_2 --tlsv1_3 target.com

    # Informations de certificat
    sslyze --certinfo target.com

    # Vérifier des vulnérabilités spécifiques
    sslyze --heartbleed target.com
    sslyze --robot target.com
    sslyze --openssl_ccs target.com

    # Headers de sécurité HTTP (HSTS)
    sslyze --http_headers target.com

    # Reprise de session
    sslyze --resum target.com

    # Complet (tout ce qui précède)
    sslyze --regular target.com

## Ce que vérifie `--regular`

    sslyze --regular target.com

→ Comprend : - Informations et chaîne de certificat - Support TLS 1.0, 1.1, 1.2, 1.3 - Énumération des suites de chiffrement - Vulnérabilité ROBOT - Heartbleed - Injection CCS OpenSSL - Reprise de session - Headers HTTP (HSTS) - OCSP stapling - Support des courbes elliptiques

## Cibles multiples

    # Scanner plusieurs hôtes
    sslyze target1.com target2.com target3.com

    # Lire depuis un fichier
    sslyze --targets_in targets.txt

    # Scanner un sous-réseau entier (avec port)
    for ip in 10.10.10.{1..254}; do sslyze $ip:443 2>/dev/null; done

## Sortie JSON

    # Sauvegarder en JSON
    sslyze --json_out results.json --regular target.com

    # Parser pour les suites de chiffrement
    cat results.json | python3 -c "
    import json, sys
    data = json.load(sys.stdin)
    for host in data['server_scan_results']:
        print(host['server_location']['hostname'])
    "

## Conseils

- Utiliser `--regular` pour un scan équilibré couvrant toutes les vérifications importantes
- SSLv2/3 et TLS 1.0/1.1 sont obsolètes : signaler tout serveur les supportant encore
- Vérifier les problèmes de chaîne de certificat : des intermédiaires manquants causent des erreurs client
- L’absence de préchargement HSTS mérite d’être notée pour les sites HTTPS
- Pour un audit rapide des ciphers : `sslyze --sslv2 --sslv3 --tlsv1 target.com` pour trouver les vieux protocoles
- Comparer avec testssl.sh pour un second avis sur la configuration TLS

Aide / Page de manuel

    sslyze [options] host[:port]

    --regular       Run full scan (most checks)
    --certinfo      Certificate info
    --sslv2         Test SSLv2
    --sslv3         Test SSLv3
    --tlsv1         Test TLS 1.0
    --tlsv1_1       Test TLS 1.1
    --tlsv1_2       Test TLS 1.2
    --tlsv1_3       Test TLS 1.3
    --heartbleed    Check for Heartbleed
    --robot         Check for ROBOT attack
    --http_headers  Check HTTP security headers
    --resum         Test session resumption
    --json_out F    JSON output file
    --targets_in F  File with targets