Неизвестный злоумышленник захватил 333 выходных узла Tor, получив возможность перехватывать SSH-соединения и незашифрованную переписку пользователей. Под контроль атакующего попало около 10% выходных ретрансляторов анонимной сети. Массовую кампанию удалось остановить только спустя несколько дней.
Подробности раскрыл 20 октября швейцарский инженер по информационной безопасности, известный под псевдонимом KABA. По его данным, скоординированная атака началась 2 октября в 09:35, когда 333 заражённых узла одновременно изменили характер обработки сетевого трафика. При этом злоумышленник проник на серверы значительно раньше, ещё в августе, и успел установить вредоносную программу Ebury 1.8.3.
Главной целью кампании, судя по обнаруженной инфраструктуре, стали пароли SSH и содержимое почтовых соединений без шифрования. Взломанные серверы перенаправляли SSH-трафик через 12 подконтрольных атакующему систем, которые подменяли удалённый сервер и пытались перехватить учётные данные. Параллельно преступник менял настройки выходных узлов Tor, чтобы через них проходило больше незашифрованного почтового трафика.
Механизм SSH-перехвата инженер обнаружил на собственном подключении. Вместо ожидаемого сервера клиент получил предупреждение об изменении криптографического ключа удалённого узла. Если пользователь игнорировал сообщение и продолжал вход по паролю, подставной сервер мог получить пароль, подключиться к настоящей системе и наблюдать за вводимыми командами. По результатам исследования KABA, атакующий также пытался установить Ebury на сервер жертвы.
Подобный перехват относится к атакам Man-in-the-Middle, когда посторонний участник незаметно вклинивается в соединение между двумя сторонами. В данном случае важную роль играла проверка ключа SSH-сервера. Предупреждение о его неожиданной замене могло остановить атаку, если пользователь отказывался продолжать подключение. Подтверждённого числа похищенных паролей исследователь не приводит.
С почтой злоумышленник использовал другую тактику. Вместо непосредственного взлома шифрования атакующий менял правила обработки соединений на выходных узлах. В частности, блокировались порты 465, 587, 993 и 995, связанные с защищёнными почтовыми подключениями, тогда как порты для передачи почты без TLS оставались доступными. Такой подход мог подтолкнуть некоторые почтовые клиенты к незащищённому соединению, если их настройки допускали подобный переход.
Выходные узлы занимают особое место в архитектуре Tor. Пользовательский трафик проходит через несколько ретрансляторов, прежде чем последний сервер отправит запрос в обычный интернет. На промежуточных участках Tor защищает соединение собственным шифрованием, однако выходной узел потенциально способен видеть содержимое данных, которые приложение передаёт без дополнительной защиты. HTTPS и корректно настроенный TLS сохраняют шифрование между клиентом и конечным сервером.
Для расширения контроля злоумышленник менял конфигурационный файл torrc на уже захваченных Linux-серверах. Некоторые ретрансляторы, прежде работавшие только как промежуточные узлы, после изменения настроек начинали обслуживать выходящий из Tor трафик. Команда безопасности Tor подтвердила случаи несанкционированного изменения конфигураций и перехвата SSH-соединений, однако точный первоначальный способ проникновения на все затронутые серверы пока не установлен.
Одним из основных инструментов атакующего стала Ebury, давно известная вредоносная программа для серверов Linux и других Unix-подобных систем. Вредоносный компонент внедряется в механизмы SSH-аутентификации, крадёт учётные данные и создаёт скрытый канал доступа. Согласно исследованию ESET за май 2024 года, за годы существования Ebury злоумышленники скомпрометировали почти 400 тысяч серверов, причём более 100 тысяч оставались заражёнными к концу 2023 года.
Один из пострадавших операторов Tor опубликовал подробную хронологию проникновения в инфраструктуру Quetzalcoatl. Расследование показало, что 28 августа атакующий вошёл на управляющий сервер с правильным паролем с первой попытки, получил права администратора и установил Ebury 1.8.3. Затем преступник добрался до другого сервера, обслуживавшего два выходных ретранслятора. Откуда злоумышленник первоначально получил пароль, установить не удалось.
На заражённом оборудовании Ebury маскировалась под системную библиотеку libkeyutils, не меняя оригинальные исполняемые файлы SSH. Благодаря такому размещению обычная проверка целостности установленных пакетов не выявляла вмешательства. Вредоносный компонент также позволял обходить стандартные журналы входа и перехватывать пароли непосредственно внутри процесса SSH. Исследователи установили, что версия 1.8.3 обходила некоторые ранее опубликованные средства обнаружения Ebury.
Масштаб проникновения хорошо иллюстрирует ситуация с Quetzalcoatl. После инцидента оператор обнаружил 168 ретрансляторов на 57 IP-адресах, которые перестали работать и публиковали одинаковые подозрительные правила выхода в интернет. При этом подробную криминалистическую проверку провели только на двух серверах, поэтому наличие Ebury на каждом из остальных узлов независимо не подтверждено. Оператор вывел инфраструктуру из эксплуатации и отказался от прежних идентификаторов ретрансляторов.
Обнаружить массовую кампанию помогло случайное SSH-подключение самого KABA. Вечером 2 октября инженер передал результаты проверки команде Tor Network Health, которая отвечает за безопасность сетевой инфраструктуры. Уже 4 октября специалисты начали помечать подозрительные серверы флагом BadExit, запрещающим использовать соответствующие узлы для выхода в интернет. Параллельно операторы получали предупреждения и самостоятельно отключали скомпрометированное оборудование.
На следующий день злоумышленник попытался перезапустить часть ретрансляторов, однако пометка BadExit не позволяла использовать заблокированные серверы для прежнего перехвата выходящего трафика. К 5 октября все 333 выявленных узла были остановлены, хотя часть отключили сами операторы, а часть, по наблюдениям исследователя, могла прекратить работу по инициативе атакующего. Последствия хорошо заметны в статистике Tor, где после 4 октября резко сократилось количество доступных выходных ретрансляторов.
После обнаружения атаки команда Tor рекомендовала операторам Linux-серверов проверить конфигурации torrc, правила перенаправления SSH-трафика, неизвестные процессы и подозрительные изменения системных служб. При обнаружении взлома разработчики советуют не ограничиваться удалением вредоносного файла, а полностью переустановить сервер, заменить ключи и пароли, а также создать новую идентичность ретранслятора. Старые ключи предлагается считать потенциально скомпрометированными.
Случай стал одним из наиболее масштабных известных инцидентов с выходными узлами Tor. Однако заражение 333 ретрансляторов не означает, что злоумышленник получил доступ ко всему трафику сети или смог автоматически раскрыть личности пользователей. Под угрозой находились прежде всего соединения, проходившие через контролируемые выходные узлы и допускавшие перехват на уровне приложения. Масштабы фактической кражи данных остаются неизвестными.
Tor уже сталкивался с массовым удалением подозрительных ретрансляторов. В ноябре 2023 года разработчики исключили из сети множество узлов, связанных с коммерческой криптовалютной схемой, которая создавала риски для пользователей и независимости инфраструктуры. Тогда речь шла не о подтверждённом перехвате SSH, а о небезопасной модели управления серверами. Октябрьский инцидент 2026 года показал другую проблему. Даже добровольно поддерживаемые ретрансляторы могут превратиться в инструмент слежки, если злоумышленники получают контроль над оборудованием операторов.