Уязвимость в GoBalance позволяет угонять .onion-адреса в даркнете
Компания Searchlight Cyber 8 октября раскрыла уязвимость в GoBalance — инструменте, который многие сайты даркнета используют, чтобы сохранять доступность во время атак. Ошибка позволяет восстановить секретный ключ, управляющий .onion-адресом, пользуясь только общедоступными данными, а затем перехватить этот адрес. Доступа к серверам, базе данных или данным пользователей захват адреса при этом не даёт.
Как работает уязвимость
Сам .onion-адрес — это по сути открытый ключ, а управляет им владелец соответствующего закрытого ключа. Чтобы оставаться доступным, сайт публикует подписанную запись (дескриптор), которую может скачать любой узел сети Tor; подписывает её GoBalance.
Проблема — в самом шаге подписи. Закрытый ключ Tor имеет длину 64 байта, но GoBalance передавал в подписывающий модуль только первые 32 байта, отбрасывая остальное. Отброшенная половина как раз и скрывает секретное значение каждой подписи. Без неё это значение становится фиксированным числом, которое может вычислить кто угодно. В итоге одного опубликованного дескриптора достаточно, чтобы восстановить закрытый ключ сайта — без всякого доступа к его серверам. А поскольку раскрывается долгосрочный мастер-ключ, восстановленный ключ позволяет подписывать действительные записи для адреса далеко в будущее.
Кто под угрозой
GoBalance — это переписанная на Go версия балансировщика Onionbalance из состава Tor; он входит в популярный набор EndGame, удерживающий сайты даркнета в сети во время DoS-атак. Уязвимость появилась именно при переписывании: оригинальный Onionbalance и сам Tor не затронуты. Кроме того, под ударом только сайты, чей мастер-ключ хранится в собственном формате Tor; инструмент настройки GoBalance записывает ключи в более безопасном формате, так что уязвимы не все.
Захват Dread
Уязвимость всплыла из-за Dread — одного из крупнейших форумов даркнета, которым управляют администраторы под именами HugBunter и Paris. С 5 по 7 октября оба .onion-адреса Dread были перехвачены и перенаправлены на конкурирующий сайт Conclave. Сначала операторы винили собственную ошибку: Paris признался, что «по глупости загрузил главный приватный onion-ключ Dread в обновление gobalance». Но через два дня перехватили и второй, резервный адрес — это уже трудно списать на оплошность, и HugBunter заявил, что атакующий применил уязвимость GoBalance против нескольких сервисов. Searchlight придерживается той же версии.
Dread переехал на новый адрес и попросил пользователей сменить пароли. Подтвердил проблему и даркнет-маркет Omega, 8 октября перешедший на новый адрес из-за «ошибки GoBalance».
Исправления пока нет
Официального патча нет: на 9 октября не нашлось ни идентификатора CVE, ни рекомендаций от Tor Project или мейнтейнера GoBalance. Независимый исследователь опубликовал патч и рабочий proof-of-concept, восстанавливающий мастер-ключ из одного дескриптора (по его словам, на тестовых ключах). Dread обещает выпустить исправленную версию.
Патч не отменяет компрометации: раз дескриптор опубликован, утёкший ключ уже не вернуть, и сайту приходится создавать новый адрес. Пользователям советуют менять пароли и доверять новому адресу только после подписанного объявления.
Источник: The Hacker News
Комментарии
Войдите, чтобы комментировать.