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.

ソース情報

リポジトリ
zebbern/termstack
ソースの最終更新活動
2026年4月10日 22:53
検出された SKILL.md の言語
英語
スター
4
フォーク
3

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

ファイルエクスプローラー
2 ファイル

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
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 | | --------------- | -------------------------------------- |
GitHubで見る
この SKILL.md は非常に大きいため、SkillsMP では最初のセクションだけを表示しています。 GitHubで見る