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.

Informações da origem

Repositório
zebbern/termstack
Última atividade na origem
10 de abril de 2026 às 22:53
Idioma detectado do SKILL.md
inglês
Estrelas
4
Forks
3

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
2 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
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 | | --------------- | -------------------------------------- |
Ver no GitHub
Este SKILL.md e muito grande, entao o SkillsMP mostra aqui apenas a primeira secao. Ver no GitHub