В Южной Корее обнаружен скрытый Linux-тулкит, встроенный в балансировщик нагрузки HAProxy

В Южной Корее обнаружен скрытый Linux-тулкит, встроенный в балансировщик нагрузки HAProxy

Новый вредоносный инструментарий нацелен на автомобильную и медиа-отрасль Южной Кореи. Он использует легитимный компонент сетевой инфраструктуры - балансировщик нагрузки HAProxy - для перехвата веб-трафика, кражи учётных данных и скрытого управления заражёнными серверами. Кампания оставалась незамеченной длительное время благодаря глубокой интеграции вредоносного кода в стандартное программное обеспечение.

Описание

Атакующие подменяли несколько системных служб Linux, включая планировщик задач cron, сервер SSH и другие демоны. Вместо оригинальных файлов на серверы попадали их троянизированные версии, которые сохраняли видимость легитимной работы. Особый интерес представляет бэкдор, получивший название ted backdoor. Он собирался непосредственно из исходного кода HAProxy версии 2.8.12, то есть вредоносная логика становилась неотъемлемой частью самого балансировщика. Такой подход позволяет злоумышленникам использовать штатные механизмы программы для обработки соединений и сокрытия своей активности.

По данным Rapid7 Labs, впервые задокументировавших кампанию, вредоносная нагрузка включала несколько взаимодополняющих модулей. Среди них - клавиатурный шпион для перехвата паролей SSH, троян удалённого управления на основе библиотеки curl и промежуточный загрузчик, который разворачивал основные компоненты на целевых машинах. Загрузчик проверял, запущены ли на сервере HAProxy или cron, и только после этого заменял системный файл планировщика задач вредоносной копией. Чтобы не вызывать подозрений, атакующие подделывали время создания файла, делая его идентичным другому системному компоненту. Кроме того, вредоносный код выборочно очищал ключевые записи в журналах событий Linux, убирая следы установки.

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

Уникальность ted backdoor состоит в его способности перехватывать и модифицировать веб-страницы в момент их доставки пользователю. Бэкдор просматривал HTTP-запросы и выбирал цели по заданным правилам: например, он мог отслеживать обращения к странице входа или административной панели. Если запрос соответствовал критериям, вредоносный код извлекал из него IP-адрес посетителя, адрес запрошенной страницы и другие данные. Затем он решал, стоит ли подменить содержимое ответа. Для отдельных жертв злоумышленники внедряли в страницу собственный скрипт, который мог перенаправлять пользователя на фишинговый сайт или выполнять скрытую загрузку другого вредоносного ПО.

Важной деталью является то, что весь процесс маскировался под обычный трафик. Команды от оператора поступали на специальный URL-адрес, замаскированный под запрос изображения. Бэкдор перехватывал такой запрос на уровне балансировщика, не передавая его внутренним серверам, поэтому в журналах бэкенда не оставалось следов. Ответы также возвращались через HAProxy, имитируя стандартный HTTP-ответ. Для дополнительной скрытности вредоносная программа корректировала внутренние счётчики соединений, чтобы её активность не отражалась в статистике работы балансировщика.

Троян удалённого управления, работавший внутри подменённого cron, действовал по расписанию: каждые двенадцать часов он связывался с командным сервером для получения новых инструкций. При необходимости оператор мог переключить его в режим учащённого опроса - раз в 30 секунд. Функциональность трояна включала выполнение команд, загрузку дополнительных модулей, создание обратной оболочки с полным доступом к системе, а также отправку подробных сведений о заражённом узле. Для идентификации жертвы использовался уникальный идентификатор, вычисленный на основе имени хоста, IP-адреса и аппаратного идентификатора машины.

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

По оценкам аналитиков, кампания с высокой вероятностью связана с северокорейскими хакерскими группировками. Выбор целей - южнокорейские автомобильные и медиакомпании - согласуется с интересами КНДР в области промышленного шпионажа и сбора разведданных. Использованные методы шифрования и схема атак через компрометацию легитимных сайтов (watering hole) ранее встречались в операциях группировок APT37 и Lazarus. Также обнаружено сходство с более ранней кампанией Operation SyncHole, в ходе которой Lazarus заражала медиасайты для доставки вредоносных скриптов посетителям.

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

Поскольку атаки продолжаются с середины 2025 года, а отдельные элементы тулкита могли использоваться и раньше, защита от подобных угроз требует особого внимания к пограничным компонентам сети. Балансировщики нагрузки, прокси-серверы и другие элементы, обрабатывающие пользовательский трафик, часто остаются без должного контроля. Рекомендуется регулярно проверять целостность исполняемых файлов, сравнивать их с эталонными версиями, а также анализировать сетевые подключения и поведение этих компонентов независимо от их собственных журналов. Только сочетание мониторинга на уровне сети, памяти и файловой системы позволяет выявить вмешательство, которое злоумышленники так тщательно маскируют.

Индикаторы компрометации

Комментарии: 0