Как узнать версию tls windows

Обновлено: 08.07.2024

Написать эту статью подоткнул тот факт, что Windows Server 2016, установленный из коробки, почему-то не имеел TLS протокол, включенный как основный по умолчанию, в то время как SSL3.0 был включен. Приводит это к разным последствиям, как для безопасности, так и для функционирования различных сервисов и приложений.

Проблемы версий протоколов SSL и TLS и совместимости приложений

Для начала рассмотрим проблемы связанные с версиями SSL протоколов:

  • SSL v2 небезопасен, устарел и не рекомендуется для использования. См. атаку DROWN по этому протоколу.
  • SSL v3 небезопасен и устаревший инструмент. См. атаку POODLE.
  • TLS v1.0 также является устаревшим протоколом, но на практике он все же оказывается необходим. Его основная слабость (BEAST) была смягчена в современных браузерах.
  • TLS v1.1 и TLS v1.2 оба не имеют известных проблем с безопасностью, но только v1.2 предоставляет современные криптографические алгоритмы.

SSL 2.0, SSL 3.0 и TLS 1.0 настоятельно рекомендуется отключить, так как большинство стандартов безопасности их уже давно не поддерживают (например, PCI DSS 3.1). Рекомендуемые протоколы TLS v1.1 и TLS v1.2 с актуальными алгоритмами шифрование и снятия хэшей.


В более ранних версиях Windows Servers (2008, 2012) SSL v3 все еще включен, т. е. Вам необходимо вручную отключить устаревшие протоколы. Windows Server 2016 и выше уже имеют конфигурацию SSL, которая соответствует действующим регламентам безопасности (например, SSL v2 и SSL v3 отключены).

Службы IIS и ADFS при этом прекрасно используют новые протоколы, следуя системным настройкам. Более того, к сервисам Azure вы не сможете подключиться через TLS 1.2, но при этом, как выяснилось, Powershell даже в Windows Server 2016 использует SSL3.0 и TLS 1.0, несмотря на то, что согласно системной настройке они отключены.

Как правильно настроить TLS для разного типа приложений?

В чем же дело? Дело в библиотеках. IIS и ADFS используют Schannel — поставщик поддержки безопасности (SSP), реализующий стандартные протоколы проверки подлинности SSL, TLS и DTLS Internet. Интерфейс поставщика поддержки безопасности (SSPI) является интерфейсом API, используемым системами Windows для выполнения функций, связанных с безопасностью, включая проверку подлинности. В Windows все функции SSPI выполняет библиотека Schannel.dll, в которой реализованы все протоколы и наборы шифрования.

Итак, ветки реестра, которые нас интересуют:


Внимание! После его отключения перестает корректно работать Shаrepoint 2010! Он использует MD5 для генерации внутренних идентификаторов безопасности, поэтому не найдя её очень страдает.

Теперь пройдем по конкретным примерам и настройкам.

Отключение SSL и TLS 1.0 протоколов на системном в Schannel подробно описано в документации Microsoft. Отключить небезопасные можно как через реестр, так и с помощью Powershell.

В этой же статье ниже описано, как отключить небезопасные алгоритмы шифрования, такие как RC4.

Отключить небезопасные наборы шифрования (cipher suites) можно через параметр Functions в ключе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Cryptography\Configuration\Local\SSL\00010002 .

Этот параметр является многострочным текстовым значением, который просто содержит построчный список наборов (один на строку). Удалите ненужные строки.



Будьте внимательны, список и порядок следования наборов меняется от версии к версии! Актуальный список для Windows 10 build 1903 доступен по ссылке.

Порядок проверки наборов шифрования также удобно изменять с помощью групповых политик. Это также описано в документации.

Ну и наконец, для управления доступными наборами появились командлеты Powershell. Например, с помощью Disable-TlsCipherSuite вы можете отключить неугодный набор.

Как я уже писал, системные настройки выше не влияют на Powershell сессии. Проверить, какие протоколы сейчас активны в вашей Powershell сессии, можно выполнив команду

Если в выводе команды увидите ssl30, tls, то их надо отключить.

Для этого в Windows Srver 2012 / Windows 2016 используйте ключ реестра

С помощью самого Powershell это можно изменить одной командой:

Готовый патч от Microsoft для исправления этого также можно скачать по ссылке KB3140245

Настройка с помощью IISCrypto


[Посещений: 3 170, из них сегодня: 16]

SSL и TLS

Когда мы используем интернет для поиска информации, покупки вещей или бронирования билетов на самолет, мы никогда не задумываемся о безопасности сайта и защите своих данных. Да и зачем это, если перед глазами популярный сервис, который давно себя зарекомендовал.

Другое дело, когда спустя сотню запросов мы находим нужную вещь для покупки, но она расположена на сомнительном ресурсе. И тут уже возникает вопрос: «А не будет ли мне это стоить всего моего состояния?». Давайте разберемся, как уберечь себя от потери личных данных и проверить сайт на наличие SSL и TLS сертификатов.

Сертификаты SSL и TLS: зачем они нужны

Продолжим разбор ситуации с покупкой чего-либо через интернет: представим себе, что мы собрались полететь на солнечное Бали из Москвы. Мы нашли сайт, который не представляет собой ничего подозрительного, и поэтому спокойно вводим на нем все необходимые данные и бронируем билеты на самолет.

В то время, когда на сайте совершается оплата за выбранные билеты, начинают срабатывать сертификаты защиты. Их еще называют SSL и TLS, но они представляют собой развитие одной технологии.

SSL расшифровывается как Secure Socket Layer, что означает «уровень защищенных сокетов». TLS же обозначается как Transport Layer Security, «безопасность транспортного уровня». По своей сути обе технологии занимаются одним делом – защитой пользовательской информации от злоумышленников.

Их отличие состоит лишь только в том, что TLS основан на уже действующей спецификации SSL 3.0. А сам SSL уже давно устарел, разработчики редко его используют как единственную защиту. Чаще всего можно увидеть связку двух сертификатов SSL/TLS. Такая поддержка обеспечивает работу как с новыми, так и со старыми устройствами.

Специфика работы сертификатов SSL/TLS

Вернемся к ситуации с покупкой билетов на сайте. Как мы выяснили, при отправке личных данных начинают действовать сертификаты. Но что происходит, если защита не производится должным путем?

SSL/TLS используют ассиметричное шифрование для аутентификации пользователя и симметричное для сохранения целостности личной информации.

Как проверить сертификаты SSL/TLS

Мы рассмотрим 5 наиболее популярных онлайн-инструментов для обнаружения слабых мест веб-сайта. Что ж, давайте приступим.

SeoLik

Начнем с отечественного онлайн-сервиса, который позиционирует себя как инструмент для проверки надежности сайта. Помимо основной задачи здесь также можно выполнить сканирование портов, узнать свой IP-адрес и произвести другие действия с сайтом.

  1. Открываем в браузере сервис Seolik и вводим ссылку на необходимый сайт, затем кликаем по кнопке «Анализ».
  2. В результате анализа рассматриваемого ресурса, перед нами отобразится вся необходимая информация: название сертификата, срок действия, серийный номер и другие атрибуты, которые могут быть полезны для разработчиков.

Использование данного сервиса поможет проверить сайт всего за несколько минут и уберечь от потери личной информации. В данном случае мы можем быть спокойны, сертификат действителен еще 322 дня.

SSL Shopper

По сравнению с предыдущим сервисом, данный инструмент не столь функционален и поддерживает только англоязычную версию. Давайте посмотрим, как он работает:

Wormly Web Server Tester

Один из самых популярных инструментов для проверки сайтов, который помогает не только узнать о наличии SSL/TLS, но и дает возможность просмотреть данные о шифровании, различные протоколы и многое другое. Работает это следующим образом:

  1. Открываем сайт и вводим в запрос «Web Server URL» нужную ссылку, затем кликаем по красной кнопке.
  2. Далее будет запущен глубокий анализ, который можно пропустить. Уже на первых этапах тестирования будет сообщено о безопасности ресурса в строке «Expires».

Данный сервис позволяет просматривать шифры сертификатов, что может быть полезно для веб-разработчиков.

Immuni Web

Это многофункциональный гигант, который анализирует поддержку протоколов, проверяет на совместимость PCI DSS и делает много всего, что недоступно в предыдущих инструментах. Конечно, здесь можно проверить и сайт на безопасность.

  1. Переходим по ссылке и в строку запроса «Enter your website or mail server address here» вписываем адрес для проверки. Далее кликаем по кнопке запуска справа от строки.
  2. Как только появятся результаты, перед нами отобразится новая страница. Пролистываем немного вниз и находим две строчки «Valid From» и «Valid To». Первая информирует о том, когда был выдан сертификат, вторая указывает на окончание срока действия.

При необходимости можно сохранить все результаты в формате PDF. Для этого следует кликнуть по кнопке «Download report».

SSL Checker

Незаменимый инструмент для разработчиков. Особенностью данного сервиса является то, что в нем можно активировать уведомления, которые будут оповещать об истечении срока действия сертификата.

проверка сертификатов ssl tls

  1. Переходим по ссылке и вводим адрес. Справа от строки запроса кликаем по кнопке «Check».
  2. Перед нами отобразится вся нужная информация. Для того чтобы напомнить об истечении срока действия сертификата, достаточно кликнуть по кнопке «Remind me SSL is about to expire» и указать свою почту.

проверка надежности сайта

На этом моя статья подходит к концу. Теперь вы знаете, как можно проверить SSL и TLS сертификаты на сайте. Спасибо за внимание!

При просмотре Интернета мы можем найти зашифрованные страницы и другие, которые не являются. Логически, ввод данных, заполнение формы или совершение покупки на сайте, который не зашифрован, может быть серьезной проблемой для нашей безопасности и конфиденциальности. Однако на сайтах, которые зашифрованы, также могут быть различия. Мы говорим о протоколе TLS и его различных версиях. В этой статье мы поговорим о Укажите TLS расширение, которое показывает нам, какую версию протокола TLS использует веб-сайт.

Различные версии протокола TLS

Сайты могут использовать разные версии протокола TLS для шифрования. Это то, что было с нами на протяжении многих лет и со временем обновилось. Это делает первые версии TLS 1.0 и TLS 1.1 устаревшими. На самом деле, некоторые браузеры по умолчанию даже не разрешают доступ к этим сайтам.

Поэтому может быть интересно узнать простым способом, какую версию протокола TLS использует веб-сайт. Последняя версия, как мы знаем, это 1.3. Они считаются безопасными и соответствуют текущим требованиям 1.2 и 1.3.

Эти две версии присутствуют на большинстве сайтов. Тем не менее, все еще есть много тех, кто продолжает использовать первые версии, которые уже устарели. Это расширение, о котором мы собираемся поговорить, имеет функцию показа пользователям точной версии, которую использует веб-сайт. Таким образом, мы всегда будем знать безопасность этого сайта.

IndicateTLS, расширение, которое указывает версию TLS

IndicatTLS это расширение, которое доступно для Mozilla Firefox , Как мы знаем, это один из самых популярных и используемых браузеров сегодня. Он имеет много ориентированных на безопасность плагинов, которые пользователи могут использовать на своих компьютерах. Цель этого расширения - указать, какую версию протокола TLS использует веб-сайт.

Первое, что мы должны сделать, это добавить плагин в нашем браузере. Мы всегда рекомендуем устанавливать расширения этого типа в официальном магазине. Таким образом, мы гарантируем, что программное обеспечение не было злонамеренно модифицировано и что мы не добавляем что-то, что может обернуться против нас. Поэтому мы получаем доступ к официальной ссылке Firefox хранения.

Процесс установки очень прост и быстр. Как только расширение будет успешно установлено, в адресной строке появится значок. Здесь он покажет нам версию протокола TLS, которую использует введенный нами веб-сайт.

Укажите TLS

Если мы нажмем на иконку, которая появляется в Адресная строка, окно будет отображаться, как мы видим на изображении выше. Он покажет нам всю информацию, касающуюся этого сайта, относительно того, является ли он безопасным, и версию TLS, которую он использует. Мы увидим состояние подключения, шифрование, если включена предварительная загрузка HSTS и т. Д.

Также, более простым и быстрым способом, на том же значке мы увидим номер версии.

Короче говоря, IndicateTLS - это расширение для Mozilla Firefox, которое очень просто в использовании и показывает нам соответствующую информацию о веб-странице, которую мы посещаем. Мы уже знаем, что безопасность является фундаментальным фактором для пользователей, и мы можем использовать множество инструментов, которые помогают нам защитить себя. В этом случае это расширение, которое само по себе не защищает нас, но может дать нам интересную информацию, чтобы узнать, стоит ли нам доверять веб-сайту.

При просмотре Интернета вы должны учитывать важность правильного шифрования сайтов. Таким образом, наши данные будут в безопасности, и мы избежим проблем. Расширения браузера, которые мы используем, также могут нам помочь. Таким образом, они будут работать как дополнение к антивирусу, который мы можем установить в системе.

Но это лишь теория, на практике же TLS 1.2 до сих пор поддерживается лишь на ограниченном числе сайтов, с TLS 1.1 – уже заметно получше, но тоже не повсеместно. Проблема поддержки современных версий TLS присутствует и «на стороне клиента», об этом позже.

Итак, для того, чтобы пользоваться у себя на компьютере только актуальными версиями актуального криптографического протокола (Ну-ка, дети, напомните, как он называется? Правильно, TLS! А какой версии? Правильно, не ниже 1.1), необходимо сделать ряд нелепых телодвижений. Почему? Правильно, потому что никто за нас не включит TLS 1.1/1.2 на нашем компьютере. За нас только проверку «подлинности» Windows включат и кучу «мусора» в автозагрузку напихают. Впрочем, я отвлекся.

Лирическое отступление: я искренне убежден (и эта убежденность подтверждается практикой), что 90% пользователей компьютеров могли бы до сих пор пользоваться Windows 3.11 (была такая ОС в начале 90-х), или, в крайнем случае, Windows 98 SE – «пишущая машинка» и браузер ничего другого и не требуют, чтобы нам там не врали про новые, еще более улучшенные интерфейсы и прочие рюшечки «революционных» новых версий ОС.

Правдой также является то, что современные технологии, связанные с безопасностью, к устаревшим ОС никак не прикрутить. Не потому, что это в принципе невозможно, а потому, что их производитель этого не сделал, как не сделал и ничего для того, чтобы прикрутить их смогли сторонние производители ПО. Поэтому, все ОС семейства Windows версии ниже XP (да и та уже в обозримом будущем), увы, безнадежно устарели в аспекте сетевой безопасности.

На этом с лирикой закончим: все следующие рассуждения будут построены на том, что используется ОС Windows XP или более поздняя (Vista, 7 или 8). И на том, что мы сами себе – вовсе не злобные Буратины, а потому своевременно устанавливаем на используемую ОС все полагающиеся обновления и «заплатки».

Итак, для начала нам стоит включить поддержку TLS 1.1 и TLS 1.2 и отключить SSL и TLS 1.0 на уровне самой ОС, за что отвечает Microsoft TLS/SSL Security Provider (schannel.dll). Что нам это даст? А вот что: все программы, которые не имеют собственного модуля поддержки TLS, а используют системный, будут использовать актуальные версии TLS.

Это в теории, согласно которой так настраивается поддержка актуальных версий TLS, в том числе, в браузере Internet Explorer. На самом деле, даже его последняя версия для Windows XP – восьмая – не поддерживает TLS версий выше 1.0. Под Windows Vista – поддерживает, а под Windows XP – нет и, более того, игнорирует запрет использования TLS 1.0. Как так? Вопрос к Microsoft, а не ко мне, мы же все равно сделаем то, что от нас требуется согласно инструкции самого производителя.

А делаем мы следующее: идем в реестр по адресу
HKLM\SYSTEM\CurrentControlSet\Control\Se curityProviders\SCHANNEL\Protocols, находим там разделы PCT 1.0, SSL 2.0, SSL 3.0 и TLS 1.0, в каждом из них – подразделы Client и Server, и создаем в них ключи DisabledByDefault (тип – DWORD), которым присваиваем значение 1 (единица).

Затем там же находим разделы TLS 1.1 и TLS 1.2 и аналогичным образом создаем в них вышеупомянутый ключ, но значение ему присваиваем другое – 0 (ноль). Там же мы отключаем слабые алгоритмы шифрования и хеширования RC2, RC4, DES, MD4 и MD5 а также запрещаем устанавливать безопасные соединения без шифрования (да, бывает и такое. в чьих-то нездоровых фантазиях), оставляя лишь относительно стойкие Triple DES и SHA.

Поскольку расписывать как, что и где менять, мне откровенно лениво, ниже будет приведено содержимое .reg файла, вносящего соответствующие изменения в реестр. Надо аккуратненько скопировать все это содержимое в буфер обмена, создать новый текстовой файл, вставить содержимое туда, сохранить этот файл с расширением .reg и запустить его, после чего – перезагрузиться.

Если случилось так, что после перезагрузки появились проблемы с сетевым соединением, ту же самую операцию надо будет проделать уже со следующим файлом – он удаляет из реестра все сделанные нами изменения, после чего (правильно, дети) снова перезагрузиться. Не обнаружив в реестре вообще никаких значений в испорченном нами разделе реестра, ОС при загрузке создаст их заново со значениями по умолчанию.

Продвинутые пользователи могут вместо полного отката изменений пошаманить с включением и отключением отдельных протоколов и алгоритмов, редактируя первый из файлов. Хозяйке на заметку: если для подключения к Интернету используется корпоративная локальная сеть, а тем более с доменом, то проблемы вероятны, и искать пути их решения рекомендуется за распитием бутылочки пива с администратором сети ;)

Также на заметку: браузеры Chrome, Firefox, Opera и Safari, т.е. все, которые не основаны на движке Internet Explorer, используют собственные модули поддержки SSL и TLS, а потому не зависят от рассмотренных нами настроек. Но это не значит, что ими можно пренебречь (в смысле, настройками). А вот о настройках самих браузеров мы поговорим в следующий раз.

Включаем TLS 1.1 и 1.2, отключаем SSL и TLS 1.0:


Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\PCT 1.0\Client]
"DisabledByDefault"=dword:00000001
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\PCT 1.0\Server]
"DisabledByDefault"=dword:00000001
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\SSL 2.0\Client]
"DisabledByDefault"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\SSL 2.0\Server]
"DisabledByDefault"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\SSL 3.0\Client]
"DisabledByDefault"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\SSL 3.0\Server]
"DisabledByDefault"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\TLS 1.0\Client]
"DisabledByDefault"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\TLS 1.0\Server]
"DisabledByDefault"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\TLS 1.1\Client]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\TLS 1.1\Server]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\P rotocols\TLS 1.2\Server]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL]
"AllowInsecureRenegoClients"=dword:00000 000
"AllowInsecureRenegoServers"=dword:00000 000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\C iphers\DES 56/56]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\C iphers\NULL]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\C iphers\RC2 128/128]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\C iphers\RC2 40/128]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\C iphers\RC2 56/128]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\C iphers\RC4 128/128]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\C iphers\RC4 40/128]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\C iphers\RC4 56/128]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\H ashes\MD4]
"Enabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\Control\SecurityProviders\SCHANNEL\H ashes\MD5]
"Enabled"=dword:00000000

Все сломалось? Удаляем сделанные изменения:

Windows Registry Editor Version 5.00

Читайте также: