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

В отличие от большинства других подобных систем, предполагающих наличие прокси-серверов с постоянно изменяемым IP-адресом, Telex позволяет скрыть прокси-сервер, используемый для получения доступа к заблокированным ресурсам так, что его местоположение и даже факт существования будет очень трудно вычислить. Достигается это путем перехвата HTTPS-соединений к неблокируемым ресурсам и перенаправления их трафика на адрес, указанный пользователем. Для этого на машины пользователей устанавливается специальный прокси-сервер, который перехватывает все попытки установить сетевое соединение и для каждого из них создает HTTPS-туннель с каким бы то ни было незаблокированным HTTPS-сервером (он используется в качестве приманки, данные до него так и не дойдут). При этом адрес и порт настоящего сервера кодируются специальным алгоритмом и отправляются как случайное число в рамках TLS-сообщения ClientHello.

На маршрутизаторы интернет-провайдеров, стоящих на пути к незаблокированному HTTPS-ресурсу, также устанавливается Telex-прокси, который слушает все запросы на установление HTTPS-соединения. Если такой запрос имеет место быть, прокси извлекает из него случайное число, передаваемое клиентом в рамках сообщения ClientHello и пытается расшифровать его содержимое с помощью секретного ключа. В случае удачи прокси позволяет серверу и клиенту завершить процедуру TLS-рукопожатия, обрывает соединение с HTTPS-сервером и, используя его идентификационные данные, создает HTTPS-туннель с клиентом, все пакеты которого будут перенаправлены на полученный из сообщения ClientHello адрес и порт. Обычные HTTPS-соединения, не содержащие зашифрованного сообщения, будут без изменений отправлены по месту назначения.

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

Доклад с описанием архитектуры Telex и заложенных в нее идей планируется представить на двадцатом симпозиуме USENIX по безопасности, но уже сейчас его можно загрузить с официального сайта проекта. Там же доступен код экспериментального клиента и сервера, который можно протестировать на специально созданных ресурсах NotBlocked.telex.cc и Blocked.telex.cc.



Источник: http://www.opennet.ru/opennews/art.shtml?num=31222