Skip to main content

ssl-check

Analyze SSL/TLS configurations for security weaknesses and compliance. Use when testing HTTPS endpoints, when checking for TLS vulnerabilities, when validating certificates, or when auditing cipher suite configurations.

Quellinformationen

Repository
zebbern/termstack
Letzte Quellaktivität
10. April 2026 um 22:53
Erkannte Sprache von SKILL.md
Englisch
Sterne
4
Forks
3

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
2 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
ssl-check
description
Analyze SSL/TLS configurations for security weaknesses and compliance. Use when testing HTTPS endpoints, when checking for TLS vulnerabilities, when validating certificates, or when auditing cipher suite configurations.
tags
["security","ssl","tls","certificate","encryption","compliance"]
triggers
["ssl check","tls analysis","certificate check","ssl configuration","tls security"]
# ssl-check ## When to Use - Target has HTTPS endpoints requiring TLS security assessment - Need to check for SSL/TLS vulnerabilities (Heartbleed, POODLE, BEAST, etc.) - Validating certificate chain and trust configuration - Auditing cipher suite strength and protocol versions - Testing STARTTLS services (SMTP, IMAP, POP3, FTP) - Checking compliance with Mozilla TLS configurations - Verifying forward secrecy and modern TLS support ## Quick Start Basic SSL/TLS scan with testssl.sh: ```bash testssl.sh example.com ``` ## Tools Overview | Tool | Type | Best For | | ---------- | ----------- | -------------------------------------------------------------- | | testssl.sh | Bash script | Comprehensive testing, vulnerability checks, no dependencies | | sslyze | Python | Programmatic analysis, Mozilla compliance, concurrent scanning | ## Step-by-Step Process ### Phase 1: Initial Assessment with testssl.sh 1. **Run comprehensive scan** ```bash testssl.sh --json-pretty --severity LOW example.com ``` 2. **Check specific vulnerabilities** ```bash testssl.sh -U example.com ``` 3. **Analyze protocols and ciphers** ```bash testssl.sh -p -e example.com ``` ### Phase 2: Deep Analysis with sslyze 1. **Full scan with JSON output** ```bash sslyze --json_out=scan_results.json example.com ``` 2. **Check Mozilla compliance** ```bash sslyze --mozilla_config=intermediate example.com ``` 3. **Multiple targets** ```bash sslyze target1.com target2.com target3.com ``` ### Phase 3: Certificate Analysis 1. **Certificate chain validation** ```bash testssl.sh -S example.com ``` 2. **Detailed certificate info** ```bash sslyze example.com --certinfo ``` ## Examples ### Example 1: Full Vulnerability Scan **Scenario:** Complete SSL/TLS security assessment **Command:** ```bash testssl.sh -U --json-pretty example.com ``` **Output:** ```json { "id": "vulnerabilities", "finding": "not vulnerable", "severity": "OK", "cve": "CVE-2014-0160", "cwe": "CWE-126" } ``` ### Example 2: Protocol Version Check **Scenario:** Verify only secure TLS versions are enabled **Command:** ```bash testssl.sh -p example.com ``` **Output:** ``` SSLv2 not offered SSLv3 not offered TLS 1 not offered TLS 1.1 not offered TLS 1.2 offered TLS 1.3 offered (final) ``` ### Example 3: Cipher Suite Analysis **Scenario:** Enumerate all supported cipher suites **Command:** ```bash testssl.sh -E example.com ``` **Output:** ``` Hexcode Cipher Suite Name (OpenSSL) KeyExch. Encryption Bits --------------------------------------------------------------------- x1302 TLS_AES_256_GCM_SHA384 ECDH 253 AESGCM 256 x1303 TLS_CHACHA20_POLY1305_SHA256 ECDH 253 ChaCha20 256 x1301 TLS_AES_128_GCM_SHA256 ECDH 253 AESGCM 128 ``` ### Example 4: Certificate Chain Validation **Scenario:** Analyze certificate deployment **Command:** ```bash testssl.sh -S example.com ``` **Output:** ``` Certificate Validity (UTC) 2024-01-01 00:00 --> 2025-01-01 23:59 Signature Algorithm SHA256withRSA Issuer Let's Encrypt Authority X3 Trust (hostname) Ok via SAN Chain of trust Ok ``` ### Example 5: Heartbleed Check **Scenario:** Test for CVE-2014-0160 **Command:** ```bash testssl.sh -H example.com ``` **Output:** ``` Heartbleed (CVE-2014-0160) not vulnerable (OK) ``` ### Example 6: POODLE Check **Scenario:** Test for SSL POODLE vulnerability **Command:** ```bash testssl.sh -O example.com ``` **Output:** ``` POODLE, SSL (CVE-2014-3566) not vulnerable (OK) ``` ### Example 7: Mozilla Compliance Check **Scenario:** Verify against Mozilla modern configuration **Command:** ```bash sslyze --mozilla_config=modern example.com ``` **Output:** ``` COMPLIANCE AGAINST MOZILLA TLS CONFIGURATION -------------------------------------------- Checking results against Mozilla's "modern" configuration. example.com:443: FAILED - Not compliant. * tls_versions: TLS 1.2 is supported, but not individual. * ciphers: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 is not individual. ``` ### Example 8: STARTTLS Mail Server Scan **Scenario:** Test SMTP server TLS configuration **Command:** ```bash testssl.sh --starttls smtp smtp.example.com:587 ``` **Output:** ``` Testing protocols via STARTTLS handshake SSLv2 not offered SSLv3 not offered TLS 1.2 offered TLS 1.3 offered (final) ``` ### Example 9: sslyze STARTTLS Scan **Scenario:** Test IMAP server with sslyze **Command:** ```bash sslyze --starttls imap imap.example.com:143 ``` **Output:** ``` SCAN RESULTS FOR IMAP.EXAMPLE.COM:143 ------------------------------------- * TLS 1.3 Cipher Suites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 ``` ### Example 10: JSON Output for Automation **Scenario:** Generate machine-parseable results **Command:** ```bash testssl.sh --json example.com -oJ results.json ``` **Output (results.json):** ```json { "scanResult": [ { "serverDefaults": { "cert_commonName": "example.com", "cert_notAfter": "2025-01-01" } } ] } ``` ### Example 11: Concurrent Multi-Target Scan **Scenario:** Scan multiple hosts efficiently **Command:** ```bash sslyze target1.com target2.com target3.com --json_out=multi.json ``` **Output:** ``` Scanned 3 servers in 12.5 seconds. ``` ### Example 12: Forward Secrecy Check **Scenario:** Verify PFS cipher support **Command:** ```bash testssl.sh -f example.com ``` **Output:** ``` Forward Secrecy (PFS): offered (OK) ECDHE-RSA-AES256-GCM-SHA384 ECDH 256 ECDHE-RSA-AES128-GCM-SHA256 ECDH 256 ECDHE-RSA-CHACHA20-POLY1305 ECDH 256 ``` ### Example 13: RC4 Cipher Detection **Scenario:** Check for weak RC4 ciphers **Command:** ```bash testssl.sh -4 example.com ``` **Output:** ``` RC4 (CVE-2013-2566, CVE-2015-2808) no RC4 ciphers detected (OK) ``` ### Example 14: Mass Testing from File **Scenario:** Batch scan multiple targets **Command:** ```bash testssl.sh --file targets.txt --parallel ``` **targets.txt:** ``` example1.com example2.com:8443 https://example3.com/ ``` ## Vulnerability Reference | Vulnerability | CVE | testssl.sh Flag | sslyze ScanCommand | Severity | | ------------- | -------------- | --------------- | ----------------------- | -------- | | Heartbleed | CVE-2014-0160 | `-H` | `HEARTBLEED` | CRITICAL | | CCS Injection | CVE-2014-0224 | `-I` | `OPENSSL_CCS_INJECTION` | HIGH | | POODLE (SSL) | CVE-2014-3566 | `-O` | N/A | MEDIUM | | BEAST | CVE-2011-3389 | `-A` | N/A | MEDIUM | | CRIME | CVE-2012-4929 | `-C` | `TLS_COMPRESSION` | MEDIUM | | BREACH | CVE-2013-3587 | `-B` | N/A | MEDIUM | | FREAK | CVE-2015-0204 | `-F` | N/A | HIGH | | LOGJAM | CVE-2015-4000 | `-J` | N/A | HIGH | | DROWN | CVE-2016-0800 | `-D` | N/A | HIGH | | SWEET32 | CVE-2016-2183 | `-W` | N/A | MEDIUM | | ROBOT | CVE-2017-13099 | `-BB` | `ROBOT` | HIGH | | Ticketbleed | CVE-2016-9244 | `-T` | N/A | MEDIUM | | LUCKY13 | CVE-2013-0169 | `-L` | N/A | LOW | | Renegotiation | CVE-2009-3555 | `-R` | `SESSION_RENEGOTIATION` | MEDIUM | ## Protocol Security Reference | Protocol | Status | testssl.sh | sslyze ScanCommand | | -------- | ----------- | ---------- | ----------------------- | | SSL 2.0 | Deprecated | `-p` | `SSL_2_0_CIPHER_SUITES` | | SSL 3.0 | Deprecated | `-p` | `SSL_3_0_CIPHER_SUITES` | | TLS 1.0 | Deprecated | `-p` | `TLS_1_0_CIPHER_SUITES` | | TLS 1.1 | Deprecated | `-p` | `TLS_1_1_CIPHER_SUITES` | | TLS 1.2 | Acceptable | `-p` | `TLS_1_2_CIPHER_SUITES` | | TLS 1.3 | Recommended | `-p` | `TLS_1_3_CIPHER_SUITES` | ## testssl.sh Flag Reference | Flag | Description | | --------------- | -------------------------------------- |
Auf GitHub ansehen
Diese SKILL.md ist sehr gross, daher zeigt SkillsMP hier nur den ersten Abschnitt. Auf GitHub ansehen