[Перевод] 10 бесплатных инструментов диагностики SSL/TLS для веб-мастера
Вы часто вынуждены решать проблемы, связанные с SSL / TLS, если работаете веб-инженером, веб-мастером или системным администратором.
Существует множество онлайн-инструментов для работы с SSL-сертификатами, тестирования слабых мест в протоколах SSL/TLS, но когда дело доходит до тестирования внутренней сети на основе URL, VIP, IP, тогда они вряд ли будут полезны.
Для диагностики ресурсов внутренней сети, вам необходимо отдельное программное обеспечение/инструменты, которые вы можете установить в своей сети и провести необходимую проверку.
Возможны различные сценарии, например:
- имеются проблемы при установке SSL-сертификата на веб-сервер;
- требуется использовать новейший/конкретный шифр, протокол;
- хочется проверить конфигурацию после ввода в работу;
- обнаружена угроза безопасности в ходе проведения тестов на уязвимости.
Следующие инструменты будут полезны в устранении подобных проблем.
Инструменты с открытым кодом для устранения проблем с SSL/TLS:
- DeepViolet
- SSL Diagnos
- SSLyze
- OpenSSL
- SSL Labs Scan
- SSL Scan
- Test SSL
- TLS Scan
- Cipher Scan
- SSL Audit
1. DeepViolet
DeepViolet — это написанный на языке Java инструмент анализа SSL/TLS, доступный в бинарном коде, вы также можете скомпилировать его из исходного кода.
Если вы ищете альтернативу SSL Labs для использования во внутренней сети, то DeepViolet будет хорошим выбором. Он сканирует следующее:
- использование слабого шифрования;
- слабый алгоритм подписи;
- статус отзыва сертификата;
- статус срока действия сертификата;
- визуализацию цепочки доверия, самоподписанного корневого сертификата.
2. SSL Diagnos
Быстро оценивает надежность SSL на вашем веб-сайте. SSL Diagnos анализирует протокол SSL, алгоритмы шифрования, уязвимости Heartbleed, BEAST.
Используется не только для HTTPS, можно проверить стабильность SSL для SMTP, SIP, POP3 и FTPS.
3. SSLyze
SSLyze — это библиотека Python и инструменты командной строки, которые подключаются к конечной точке SSL и осуществляют сканирование для обнаружения любой пропущенной конфигурации SSL/TLS.
Сканирование через SSLyze — это быстро, потому что осуществление проверки распределяется между несколькими процессами. Если вы разработчик или хотите интегрировать в ваше существующее приложение, то у вас есть возможность записать результат в формате XML или JSON.
SSLyze также доступен в Kali Linux.
4. OpenSSL
Не стоит недооценивать OpenSSL — один из самых мощных автономных инструментов, доступных для Windows или Linux для выполнения различных задач, относящихся к SSL, таких как верификация, генерация CSR, конвертация формата сертификатов и др.
5. SSL Labs Scan
Любите Qualys SSL Labs? Вы не одиноки — мне тоже нравится.
Если вы ищете инструмент командной строки для SSL Labs для автоматического или массового тестирования, то SSL Labs Scan будет, несомненно, полезен.
6. SSL Scan
SSL Scan совместим с Windows, Linux и Mac. SSL Scan помогает быстро определить следующие показатели:
- подсветка SSLv2/SSLv3/CBC/3DES/RC4 шифрования;
- сообщение о слабом (<40 бит), нулевом или неизвестном шифровании;
- проверить компрессию TLS, уязвимость Heartbleed;
- и многое другое…
Если вы работаете над проблемами, связанными с шифрованием, то SSL Scan станет полезным инструментом для ускорения поиска и устранения неполадок.
7. Test SSL
Как видно из названия, TestSSL — это инструмент командной строки, совместимый с Linux и других ОS. Он проверяет все важнейшие показатели и показывает, что в порядке, а что нет.
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)
Как можно видеть, он охватывает большое количество уязвимостей, шифровальных предпочтений, протоколов и др.
TestSSL.sh также доступен в Docker-образе.
8. TLS Scan
Вы можете собрать TLS-Scan из исходного кода или загрузить бинарный код для Linux/OSX. Он извлекает информацию из сертификата с сервера и выводит следующие показатели в формате JSON:
- верификация имени хоста;
- проверка компрессии TLS;
- проверка нумерации версий шифрования и TLS;
- проверка повторного использования сессий.
Он поддерживает протоколы TLS, SMTP, STARTTLS и MySQL. Вы также можете интегрировать результаты в анализатор логов, например, такие как Splunk, ELK.
9. Cipher Scan
Быстрый инструмент для анализа того, какие типы шифрования поддерживаются на веб-сайтах с использованием протокола HTTPS. Cipher Scan также дает возможность отображать результаты в формате JSON. Это оболочка, использующая команды пакета OpenSSL.
10. SSL Audit
SSL Audit — это инструмент с открытым исходным кодом для проверки сертификата и поддержки протоколов, шифрования и стандартов на основе SSL Labs.
Я надеюсь, что упомянутые инструменты с открытым исходным кодом помогут вам интегрировать непрерывное сканирование в ваши действующие анализаторы логов и облегчат устранение неполадок.
Заглядывайте на VPS.today — сайт для поиска виртуальных серверов. 1500 тарифов от 130 хостеров, удобный интерфейс и большое число критериев для поиска самого лучшего виртуального сервера.