Представлен выпуск инструментария Tor 0.2.9.8, используемого для организации работы анонимной сети Tor. Tor 0.2.9.8 является первым стабильным выпуском ветки 0.2.9, которая развивалась последние пять месяцев. В состав нового выпуска принято 1406 изменений, подготовленных 32 разработчиками.
Основные новшества:
- Реализован режим единичных onion-сервисов (Single Onion Services), который может применяться для оптимизации доступа к сервисам, для которых не важно поддержание анонимности. При включении режима Single Onion Services цепочка анонимизации сокращается с 6 до 3 пробросов, что позволяет заметно ускорить доступ к сервисам и снизить нагрузку на сеть Tor, ценой потери анонимности для сервиса. Следует напомнить, что изначально в Tor для анонимизации пользователя применяется три проброса между клиентом и выходным узлом, а для анонимизации скрытых сервисов - шесть (три для анонимизации клиента и три для скрытия местоположения сервиса), что приводит к тому, что скрытые сервисы достаточно медлительны, по сравнению с обращением через Tor к обычным сайтам.
Новый режим может быть востребован скрытыми сервисами, которым требуется минимизировать задержки или организовать загрузку больших объёмов данных, но при этом нет необходимости скрывать адрес сервера. Из соображений безопасности и чтобы предотвратить потерю анонимности по ошибке, новый режим может быть активирован только в конфигурации с одним onion-сервисом. Сочетание сервисов в режиме Single Onion Services и обычных скрытых сервисов не допускается. Включение осуществляется через опции HiddenServiceSingleHopMode и HiddenServiceNonAnonymousMode.
- Реализация протокола для совместной генерации случайных чисел, который станет основой для создания технологии для скрытых сервисов нового поколения. Протокол позволяет формировать случайные числа на основе общего пула энтропии, получаемого на основе случайных данных с различных серверов. Подобный подход позволяет исключить влияние качества генерации случайных чисел на конкретной системе. В случае совместной энтропии компрометация генераторов случайных чисел отдельных систем не позволит скомпрометировать совместно генерируемые случайные числа. Технически, каждую полночь все серверы директорий коллективно генерируют глобальное случайное число, которое невозможно предсказать заранее. Данное случайное число действует сутки, а затем обновляется;
- Метод согласования ключей ntor переведён в разряд обязательных к применению возможностей. Удостоверяющие хосты (authorities), шлюзы и клиенты теперь обязаны использовать ключи ntor во всех дескрипторах, во время всех пробросов и на всех шагах цепочки анонимизации. Иными словами, за исключением скрытых сервисов, только ntor теперь допустим, а поддержка метода согласования TAP прекращена. Обязательное использование ntor приведёт к усилению защиты как всей сети, так и отдельных пользователей.
- Повышены требования к версиям библиотек, для сборки требуется как минимум OpenSSL 1.0.1, Libevent 2.0.10 и zlib 1.2.
- Из соображений безопасности объявлены устаревшими некоторые опции для кэширования ответов DNS на стороне клиента (теоретически может использоваться как фактор деанонимизации): CacheDNS, CacheIPv4DNS, CacheIPv6DNS, UseDNSCache, UseIPv4Cache и UseIPv6Cache. Также объявлены устаревшими опции AllowDotExit, AllowInvalidNodes, AllowSingleHopCircuits, AllowSingleHopExits, ClientDNSRejectInternalAddresses, CloseHSClientCircuitsImmediatelyOnTimeout, CloseHSServiceRendCircuitsImmediatelyOnTimeout, ExcludeSingleHopRelays, FastFirstHopPK, TLSECGroup, UseNTorHandshake, и WarnUnsafeSocks, которые также вызывают вопросы с точки зрения безопасности;
- При наличии поддержки в компиляторе по умолчанию при сборке задействована опция "-ftrapv" для выявления целочисленных переполнений. При сборке в GCC включён вывод большой порции дополнительных предупреждений.
Дополнительно можно отметить выход последнего корректирующего обновлений прошлой ветки Tor 0.2.8.12 в котором устранена уязвимость (CVE-2016-1254), способная привести к краху клиентского ПО при обращении к специально настроенному скрытому сервису. Также опубликован первый альфа-выпуск новой ветки Tor 0.3.0, в которой задействована идентификация шлюзов по ключам Ed25519, в клиенте улучшен алгоритм выбора и поддержания списка вспомогательных узлов для подключения к сети, добавлена поддержка дополнительного бэкенда для скрытых сервисов нового поколения.
|