本文概述
在以网络工程师, 网站管理员或系统管理员的身份工作时, 你通常需要调试与SSL/TLS相关的问题。
有很多在线工具可用于SSL证书, 测试SSL/TLS漏洞, 但是当涉及到基于Intranet的URL, VIP, IP的测试时, 它们将无济于事。
要对Intranet资源进行故障排除, 你需要一个独立的软件/工具, 可以将其安装在网络中并执行必要的测试。
可能有多种情况, 例如:
- 使用Web服务器实施SSL证书期间出现问题
- 要确保最新/特定的密码, 正在使用协议
- 实施后, 希望验证配置
- 渗透测试结果中发现安全风险
使用以下工具可以方便地解决此类问题。
开源SSL/TLS调试工具
- DeepViolet
- SSL Diagnos
- SSLyze
- OpenSSL
- SSL Labs Scan
- SSL Scan
- TestSSL
- TLS Scan
- Cipher Scan
- SSL Audit
DeepViolet
DeepViolet是一个基于Java的SSL/TLS扫描工具, 有二进制文件, 你也可以使用源代码进行编译。
如果你正在寻找在内部网络上使用的SSL实验室的替代方案, 那么DeepViolet将是一个不错的选择。它扫描以下内容。
- 弱密码暴露
- 弱签名算法
- 认证撤销状态
- 证书到期状态
- 可视化信任链, 一个自签名的根
SSL Diagnos
快速评估你的网站的SSL强度。 SSL Diagnos会提取SSL协议, 密码套件, 令人讨厌的东西, BEAST。
不只是HTTPS, 还可以测试SMTP, SIP, POP3和FTPS的SSL强度。
SSLyze
SSLyze是一个Python库和命令行工具, 可连接到SSL端点并执行扫描以识别任何SSL/TLS丢失配置。
通过SSLyze进行扫描非常快速, 因为测试是通过多个过程进行分发的。如果你是开发人员, 或者想与现有应用程序集成, 则可以选择以XML或JSON格式编写结果。
SSLyze在Kali Linux中也可用。
OpenSSL
不要低估OpenSSL, OpenSSL是Windows或Linux可以执行各种与SSL相关的任务(例如验证, CSR生成, 证书转换等)的强大独立工具之一。
SSL Labs Scan
喜欢Qualys SSL实验室?你不是一个人;我也爱它。
如果你正在寻找用于SSL Labs的命令行工具以进行自动化或批量测试, 则SSL Labs Scan将很有用。
SSL Scan
SSL Scan与Windows, Linux和MAC兼容。 SSL Scan可以快速帮助你确定以下指标。
- 突出显示SSLv2 / SSLv3 / CBC / 3DES / RC4 /密码
- 报告弱(<40bit), 空/匿名密码
- 验证TLS压缩, 令人讨厌的漏洞
- 以及更多…
如果你正在处理与密码相关的问题, 那么SSL Scan将是快速跟踪故障排除的有用工具。
TestSSL
顾名思义, TestSSL是与Linux或OS兼容的命令行工具。它测试所有基本指标并给出状态, 无论好坏。
例如:
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)
如你所见, 它涵盖了大量漏洞, 密码首选项, 协议等。Docker映像中也提供TestSSL.sh。
如果需要使用testssl.sh进行远程扫描, 则可以尝试Geekflare TLS扫描仪。
TLS Scan
你可以从源代码构建TLS扫描, 也可以下载Linux / OSX的二进制文件。它从服务器提取证书信息, 并以JSON格式打印以下指标。
- 主机名验证检查
- TLS压缩检查
- 密码和TLS版本枚举检查
- 会话重用检查
它支持TLS, SMTP, STARTTLS和MySQL协议。你也可以将结果输出集成到Splunk, ELK等日志分析器中。
Cipher Scan
一种分析HTTPS网站支持所有密码的快速工具。Cipher Scan还具有以JSON格式显示输出的选项。包装器, 内部使用OpenSSL命令。
SSL Audit
SSL Audit是一种开放源代码工具, 用于验证证书并支持基于SSL Labs的协议, 密码和等级。
我希望上述开放源代码工具可以帮助你将连续扫描与现有的日志分析器集成在一起, 并简化故障排除过程。
评论前必须登录!
注册