ПОПРОБУЙТЕ НАШ НОВЫЙ ИНСТРУМЕНТ⌕ БЕСПЛАТНЫЙ PROXY-CHECKERПРОВЕРИТЬ

Материал

Объяснение работы прокси-сервера TLS Termination Proxy: Что это такое и как это работает?

Протокол TLS: Значение и принцип работы TLS

Значение

Интернет основан на обмене и обработке данных. Для корректной обработки и обмена компьютеры используют наборы правил в соответствии с общими стандартами. Эти правила называются сетевыми протоколами. Сетевые протоколы объясняют компьютерам во Всемирной паутине, как общаться друг с другом.

TLS (Transport Layer Security) - это шифрованный протокол для безопасного выполнения операций с данными. В 1999 году организация IETF (Internet Engineering Task Force) выпустила первую версию TLS в качестве обновления стандарта SSL 3.0.

SSL Изначально стандарт был изобретением компании Netscape Corp. и предназначался для защиты незашифрованного уязвимого протокола передачи гипертекста HTTP.

В 2015 году стандарт SSL был признан устаревшим. Позже TLS практически полностью заменил SSL. В 2022 году TLS 1.3 станет самым современным и передовым протоколом безопасности.

TLS в модели OSI

imgonline-com-ua-Resize-pdcjyBPTpBG

OSI (Open Systems Interconnection) дает первое приближение к области применения протокола.

Простой протокол может относиться к одному уровню OSI. Сложные протоколы имеют различные характеристики, поэтому они одновременно принадлежат к разным уровням OSI.

TLS обладает свойствами четырех уровней: приложения, представления, сеанса и передачи.

Принцип работы TLS

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

TLS работает как дополнение к HTTP, обеспечивающее безопасность шифрования. Он задает правила соединения и вызывает криптографические системы для защиты соединения. Модернизированная версия HTTP широко известна как HTTPS.

TLS ставит перед собой три основные цели обеспечения безопасности:

Реализация этих целей составляет суть принципов работы TLS.

Конфиденциальность

Защита конфиденциальности - это совокупность действий, направленных на предотвращение нежелательного доступа к информации.

Пример системы без защиты конфиденциальности:

imgonline-com-ua-Resize-LT90X73AjC
  1. 1. Пользователь хочет войти на сайт банка.

  2. 2. Пользователь подключается к банковскому серверу с помощью клиентской машины.

  3. 3. Клиент отправляет сообщение с банковскими реквизитами.

  4. 4. Сервер проверяет логин и пароль и пропускает пользователя.

Конфиденциальность находится под угрозой! Злоумышленник ("человек посередине") может перехватить сообщение и прочитать его содержимое.

Пример системы с простым симметричным шифрованием:

imgonline-com-ua-Resize-TZuY6EhrYzat2Z4

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

Безопасное шифрование TLS

В протоколе TLS используется более надежный асимметричный тип шифрования. Он запускает процесс взаимной проверки между клиентом и сервером. Этот процесс называется рукопожатием. Протокол может вызывать различные алгоритмы для выполнения рукопожатия, но наиболее популярными являются алгоритмы RSA и Диффи-Хеллмана. Это упрощенный пример рукопожатия RSA.

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

imgonline-com-ua-Resize-PVQfd2vTToqSSJ
  1. 1. Клиент подключается к серверу и запрашивает защищенное соединение.

  2. 2. Сервер отвечает и отправляет открытый ключ клиенту.

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

  4. 4. Сервер получает сообщение и расшифровывает его с помощью закрытого ключа.

Целостность

Защита целостности данных - это комплекс мер по сохранению информации в неизменном виде. Основная цель - не допустить искажения информации из-за сбоев в работе системы.

Для достижения целостности в TLS используются симметричные хэш-функции (MD5, SHA и др.):

  1. 1. Клиент преобразует массив данных в зашифрованную строку и получает хэш.

  2. 2. Клиент отправляет данные и хэши, упакованные вместе.

  3. 3. Сервер получает и извлекает данные и хэш. Он снова преобразует данные в хэш и сравнивает полученный хэш с недавно полученным хэшем. Если они не совпадают, это означает, что сообщение повреждено.

Аутентификация

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

Цифровые сертификаты позволяют проверить, является ли сервер доверенным. Сервер может сертифицировать свой открытый ключ в доверенных организациях, называемых центрами сертификации (CA). Это такие компании, как IdenTrust, DigiCert и GoDaddy. Они сертифицируют открытый ключ с помощью сертификата корневого центра сертификации. Когда клиентская машина подключается к серверу и получает ключ, она обращается к CA с вопросом: является ли этот ключ подлинным? Если ключ не сертифицирован, CA блокирует соединение.

TLS Proxy: Что это такое и как это работает

Что такое прокси?

1-1

Прокси-сервер - это посредник между клиентом и сервером. Весь трафик проходит через посредника. Преимущества соединения через точку-посредник заключаются в следующем:

Принцип работы TLS-прокси

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

Существует два типа прокси-серверов TLS в зависимости от того, как они участвуют в этом процессе. Прокси-серверы Passthrough передают сообщение от клиента к серверу и обратно. Оконечные прокси-серверы прерывают соединение на середине.

Прокси-сервер завершения TLS

Типы прокси-серверов для завершения TLS

Оконечный прокси-сервер TLS является активным участником соединения. Он направляет HTTPS-трафик от клиента к серверу и прерывает соединение для чтения и анализа трафика. Для этого посредник разбивает туннель между клиентом и сервером на две части: Клиент - Прокси, Прокси - Сервер. TSL-соединение прерывается с одной стороны. В зависимости от стороны существует два типа соединений:

Разгрузка

Тип разгрузки является наиболее распространенным при построении сетей.

2-1

Прокси-сервер получает зашифрованное сообщение (HTTPS) со стороны клиента и расшифровывает его. Поскольку прокси-серверы могут работать только с расшифрованными файлами, на этом этапе он может анализировать данные и управлять ими. Например, он может балансировать нагрузку для внутреннего сервера, обеспечивать наблюдение за сетью и блокировать вредоносные действия. Затем посредник направляет трафик на сервер, использующий HTTP.

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

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

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

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

Шифрование

Тип шифрования аналогичен выгрузке, но данные шифруются со стороны сервера. Посредник получает клиентские данные в открытом виде (HTTP). Затем он шифрует трафик и пересылает его на сервер с HTTPS. Сервер отвечает, а посредник расшифровывает данные и пересылает их клиенту.

Мост

3-1

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

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

Причины использования терминации по доверенности

  1. 1. Чтобы заставить HTTPS взаимодействовать с HTTP (помогает основать соединение фронтенда HTTPS с бэкендом HTTP).

  2. 2. Чтобы добавить точку аутентификации на основе сертификата.

  3. 3. Для разгрузки серверов.

  4. 4. Для балансировки нагрузки.

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

  6. 6. Включить дополнительные версии протоколов.

  7. 7. Если прокси находится гораздо ближе к клиенту, чем конечная точка, то процесс квитирования происходит быстрее.

Плюсы и минусы использования доверенности на расторжение договора

Плюсы

Минусы

Прокси-сервер TLS Passthrough

4-1

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

Сквозной проходной туннель безопасен, поскольку защищенное HTTPS-соединение не превращается в HTTP, как это происходит при разрыве. Человек посередине не может получить доступ к защищенным данным на любом участке туннеля.

Недостатком этого метода является его высокая стоимость и невозможность производить какие-либо действия с веб-трафиком.

Цели использования прокси-сервера Passthrough

Плюсы и минусы использования сквозного прокси-сервера

Плюсы

Минусы

Вывод: TLS Termination Edge vs Passthrough Proxies

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

Окончание

Проходной

Характеристики

Проектирование сети

Промежуточный шлюз

Сквозной

Шифрование/дешифрование данных

В середине

В конечных точках

Участие в процессе передачи данных

Активный

Пассивный

Структура соединения

Протокол HTTPS-proxy-HTTP

Протокол HTTPS-proxy-HTTP

Дополнительные меры безопасности

Требуется сертификат

Сертификат не требуется

Характеристики

HTTP-совместимый

Да

Нет

Безопасность

Уязвимость к атакам типа "человек посередине"

Безопасный

Эффективность прокси-функций

Высокая

Ограниченный

Разгружает бэкэнд

Да

Нет

Цена

Меньше стоимость

Больше стоимость