Als Webingenieur, Webmaster oder Systemadministrator müssen Sie häufig SSL/TLS-bezogene Probleme beheben.
Es gibt viele Online-Tools für SSL-Zertifikate, das Testen von SSL/TLS-Schwachstellen, aber wenn es darum geht, intranetbasierte URLs, VIPs und IPs zu testen, sind sie nicht hilfreich.
Um Fehler in Intranetressourcen zu beheben, benötigen Sie eigenständige Software/Tools, die Sie in Ihrem Netzwerk installieren und einen erforderlichen Test durchführen können.
Es könnte verschiedene Szenarien geben, wie:
- Probleme bei der Implementierung des SSL-Zertifikats mit dem Webserver
- Sie möchten sicherstellen, dass die neueste/bestimmte Chiffre und das Protokoll verwendet werden
- Nach der Implementierung möchten Sie die Konfiguration überprüfen
- Sicherheitsrisiko in einem Penetrationstestergebnis gefunden
Die folgenden Tools sind praktisch, um solche Probleme zu beheben.
Inhaltsverzeichnis
DeepViolett
DeepViolett ist ein Java-basiertes SSL/TLS-Scanning-Tool, das als Binärdatei verfügbar ist, oder Sie können es mit dem Quellcode kompilieren.
Wenn Sie nach einer Alternative zu SSL Labs suchen, die in einem internen Netzwerk verwendet werden kann, dann wäre DeepViolet eine gute Wahl. Es scannt nach Folgendem.
- Schwache Chiffre aufgedeckt
- Schwacher Signaturalgorithmus
- Widerrufsstatus der Zertifizierung
- Ablaufstatus des Zertifikats
- Visualisieren Sie die Vertrauenskette, einen selbstsignierten Stamm
SSL-Diagnose
Bewerten Sie schnell die SSL-Stärke Ihrer Website. SSL-Diagnose SSL-Protokoll extrahieren, Cipher Suites, Heartbleed, BEAST.
Nicht nur HTTPS, sondern Sie können die SSL-Stärke für SMTP, SIP, POP3 und FTPS testen.
SSLyze
SSLyze ist eine Python-Bibliothek und ein Befehlszeilentool, das eine Verbindung zum SSL-Endpunkt herstellt und einen Scan durchführt, um jede SSL/TLS-Fehlkonfiguration zu identifizieren.
Das Scannen über SSLyze ist schnell, da ein Test über mehrere Prozesse verteilt wird. Wenn Sie ein Entwickler sind oder in Ihre vorhandene Anwendung integrieren möchten, haben Sie die Möglichkeit, das Ergebnis im XML- oder JSON-Format zu schreiben.
SSLyze ist auch in Kali Linux verfügbar. Wenn Sie neu bei Kali sind, lesen Sie, wie Sie Kali Linux auf VMWare Fusion installieren.
OpenSSL
Unterschätzen Sie nicht OpenSSL, eines der leistungsstarken eigenständigen Tools, die für Windows oder Linux verfügbar sind, um verschiedene SSL-bezogene Aufgaben wie Verifizierung, CSR-Generierung, Zertifizierungskonvertierung usw. durchzuführen.
SSL Labs-Scan
Lieben Sie Qualys SSL Labs? Du bist nicht alleine; Ich liebe es auch.
Wenn Sie nach einem Befehlszeilentool für SSL Labs für automatisierte oder Massentests suchen, dann SSL Labs-Scan wäre nützlich.
SSL-Scan
SSL-Scan ist mit Windows, Linux und MAC kompatibel. Der SSL-Scan hilft schnell, die folgenden Metriken zu identifizieren.
- Markieren Sie SSLv2/SSLv3/CBC/3DES/RC4/Chiffren
- Melden Sie schwache (<40 Bit), null/anonyme Chiffren
- Überprüfen Sie die TLS-Komprimierung, Heartbleed-Schwachstelle
- und vieles mehr…
Wenn Sie an Verschlüsselungsproblemen arbeiten, wäre ein SSL-Scan ein hilfreiches Tool, um die Fehlerbehebung zu beschleunigen.
wdzwdz TLS-Scanner-API
Eine weitere raffinierte Lösung für Webmaster kann die wdzwdz TLS Scanner API sein.
Dies ist eine robuste Methode, um das TLS-Protokoll, CN, SAN und andere Zertifikatdetails in Sekundenbruchteilen zu überprüfen. Und Sie können dies risikofrei mit einem kostenlosen Abonnement für bis zu 3000 Anfragen pro Monat ausprobieren.
Die Basis-Premium-Stufe fügt jedoch eine höhere Anforderungsrate und 10.000 API-Aufrufe für nur 5 US-Dollar pro Monat hinzu.
SSL testen
Wie der Name schon sagt, SSL testen ist ein Befehlszeilentool, das mit Linux oder OS kompatibel ist. Es testet alle wesentlichen Metriken und gibt den Status an, ob gut oder schlecht.
Ex:
Testing protocols via sockets except SPDY+HTTP2 SSLv2 not offered (OK) SSLv3 not offered (OK) TLS 1 offered TLS 1.1 offered TLS 1.2 offered (OK) SPDY/NPN h2, spdy/3.1, http/1.1 (advertised) HTTP2/ALPN h2, spdy/3.1, http/1.1 (offered) Testing ~standard cipher categories NULL ciphers (no encryption) not offered (OK) Anonymous NULL Ciphers (no authentication) not offered (OK) Export ciphers (w/o ADH+NULL) not offered (OK) LOW: 64 Bit + DES encryption (w/o export) not offered (OK) Weak 128 Bit ciphers (SEED, IDEA, RC[2,4]) not offered (OK) Triple DES Ciphers (Medium) not offered (OK) High encryption (AES+Camellia, no AEAD) offered (OK) Strong encryption (AEAD ciphers) offered (OK) Testing server preferences Has server cipher order? yes (OK) Negotiated protocol TLSv1.2 Negotiated cipher ECDHE-ECDSA-CHACHA20-POLY1305-OLD, 256 bit ECDH (P-256) Cipher order TLSv1: ECDHE-RSA-AES128-SHA AES128-SHA ECDHE-RSA-AES256-SHA AES256-SHA DES-CBC3-SHA TLSv1.1: ECDHE-RSA-AES128-SHA AES128-SHA ECDHE-RSA-AES256-SHA AES256-SHA TLSv1.2: ECDHE-ECDSA-CHACHA20-POLY1305-OLD ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES128-SHA ECDHE-ECDSA-AES128-SHA256 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES256-SHA ECDHE-ECDSA-AES256-SHA384 ECDHE-RSA-CHACHA20-POLY1305-OLD ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA ECDHE-RSA-AES128-SHA256 AES128-GCM-SHA256 AES128-SHA AES128-SHA256 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-SHA ECDHE-RSA-AES256-SHA384 AES256-GCM-SHA384 AES256-SHA AES256-SHA256 Testing vulnerabilities Heartbleed (CVE-2014-0160) not vulnerable (OK), no heartbeat extension CCS (CVE-2014-0224) not vulnerable (OK) Ticketbleed (CVE-2016-9244), experiment. not vulnerable (OK) Secure Renegotiation (CVE-2009-3555) not vulnerable (OK) Secure Client-Initiated Renegotiation not vulnerable (OK) CRIME, TLS (CVE-2012-4929) not vulnerable (OK) BREACH (CVE-2013-3587) potentially NOT ok, uses gzip HTTP compression. - only supplied "/" tested Can be ignored for static pages or if no secrets in the page POODLE, SSL (CVE-2014-3566) not vulnerable (OK) TLS_FALLBACK_SCSV (RFC 7507) Downgrade attack prevention supported (OK) SWEET32 (CVE-2016-2183, CVE-2016-6329) not vulnerable (OK) FREAK (CVE-2015-0204) not vulnerable (OK) DROWN (CVE-2016-0800, CVE-2016-0703) not vulnerable on this host and port (OK) make sure you don't use this certificate elsewhere with SSLv2 enabled services https://censys.io/ipv4?q=EDF8A1A3D0FFCBE0D6EA4C44DB5F4BE1A7C2314D1458ADC925A30AA6235B9820 could help you to find out LOGJAM (CVE-2015-4000), experimental not vulnerable (OK): no DH EXPORT ciphers, no DH key detected BEAST (CVE-2011-3389) TLS1: ECDHE-RSA-AES128-SHA AES128-SHA ECDHE-RSA-AES256-SHA AES256-SHA DES-CBC3-SHA VULNERABLE -- but also supports higher protocols (possible mitigation): TLSv1.1 TLSv1.2 LUCKY13 (CVE-2013-0169) VULNERABLE, uses cipher block chaining (CBC) ciphers RC4 (CVE-2013-2566, CVE-2015-2808) no RC4 ciphers detected (OK)
Wie Sie sehen können, deckt es eine große Anzahl von Schwachstellen, Verschlüsselungseinstellungen, Protokollen usw. ab. TestSSL.sh ist auch in a verfügbar Docker-Bild.
Wenn Sie einen Remote-Scan mit testssl.sh durchführen müssen, können Sie den wdzwdz TLS-Scanner ausprobieren.
TLS-Scan
Sie können entweder bauen TLS-Scan aus dem Quellcode oder laden Sie die Binärdatei für Linux/OSX herunter. Es extrahiert Zertifikatinformationen vom Server und druckt die folgenden Metriken im JSON-Format.
- Prüfung des Hostnamens
- TLS-Komprimierungsprüfungen
- Cipher- und TLS-Versionsaufzählungsprüfungen
- Sitzungswiederverwendungsprüfungen
Es unterstützt die Protokolle TLS, SMTP, STARTTLS und MySQL. Sie können die resultierende Ausgabe auch in einen Protokollanalysator wie Splunk oder ELK integrieren.
Chiffre-Scan
Ein schnelles Tool, um zu analysieren, welche Verschlüsselungen die HTTPS-Website unterstützt. Chiffre-Scan hat auch eine Option, um die Ausgabe im JSON-Format anzuzeigen. Es ist ein Wrapper und verwendet intern den OpenSSL-Befehl.
SSL-Audit
SSL-Audit ist ein Open-Source-Tool zur Überprüfung des Zertifikats und zur Unterstützung des Protokolls, der Chiffren und der Klasse basierend auf SSL Labs.
Ich hoffe, die oben genannten Open-Source-Tools helfen Ihnen dabei, das kontinuierliche Scannen in Ihren vorhandenen Protokollanalysator zu integrieren und die Fehlerbehebung zu vereinfachen.