Маскировка x/crypto: Go‑модуль с бэкдором в ReadPassword
Недавно выявленная угроза связана с вредоносным модулем github.com/xinfeisoft/crypto, который имитирует легитимную библиотеку golang.org/x/crypto. Поскольку x/crypto — одна из базовых криптографических библиотек в экосистеме Go, подмена делает модуль особенно опасным: он легко может попасть в графы зависимостей множества приложений и запустить многоступенчатую атаку на Linux-хосты.
Краткая суть угрозы
- Модуль действует как многоступенчатый Linux-дроппер.
- Встроенный бэкдор реализован в функции
ReadPasswordфайлаssh/terminal/terminal.go. - При выполнении модуль добавляет SSH-ключ в
authorized_keysпользователя ubuntu по умолчанию, меняет iptables для разрешения всего трафика и загружает дополнительные полезные файлы, маскируемые под медиафайлы.mp5. - Одна из загружаемых полезных нагрузок —
555.mp5— идентифицирована как бэкдор Rekoobe Linux, обычно связываемый с деятельностью APT31.
Механизм и цепочка выполнения
После вызова встроенной функции ReadPassword модуль обращается к промежуточному файлу, размещённому на GitHub, который определяет следующую вредоносную конечную точку цепочки. Цепочка включает несколько сетевых переходов и загрузку дополнительных полезных нагрузок, что расширяет возможности для гибкого command-and-control.
Ключевые операции модуля:
- Добавление SSH-ключа в
/home/ubuntu/.ssh/authorized_keysдля обеспечения стойкого доступа. - Изменение правил iptables, позволяющее свободный вход и выход трафика.
- Загрузка и выполнение замаскированных файлов
.mp5с контролируемого злоумышленником сервера. - Сбор интерактивно вводимых пользователями конфиденциальных данных и их отправка по HTTP POST на внешний сервер, а также получение команд обратно.
«Успех этой атаки зависит от тактики маскировки, использующей доверие к оригинальной библиотеке Go»
Атрибуция, индикаторы и контекст
Анализ полезной нагрузки и инфраструктуры указывает на связь с инструментарием, ассоциируемым с Rekoobe Linux и активностью APT31. Инфраструктура и тактики предполагают нацеленность на сценарии, где используется стандартная учетная запись ubuntu — типично для облачных сред.
Инцидент соотносится с техниками из фреймворка MITRE ATT&CK:
- Компрометация цепочки поставок (Supply Chain Compromise)
- Перехват вводимых данных (Input Capture)
- Манипулирование авторизованным SSH-ключом для сохранения доступа (SSH Authorized Keys)
Текущее состояние и реакция
Пакет github.com/xinfeisoft/crypto по-прежнему находился в общедоступных репозиториях до момента обнаружения. После публикации фактов команда безопасности Go предприняла шаги по блокировке пакета, однако инцидент подчёркивает, что подобные модули могут быть быстро включены в рабочие процессы разработки через системы управления зависимостями.
Риски для организаций
- Незаметная компрометация поставщиков библиотек может привести к массовому заражению приложений и серверов.
- Целевая эксплуатация учетной записи ubuntu повышает риск в облачных средах и на виртуальных образах.
- Сбор интерактивных учётных данных и их передача злоумышленникам ставит под угрозу секреты и доступы.
- Изменение сетевых политик (iptables) и установка постоянных ключей обеспечивают долгосрочный несанкционированный доступ.
Рекомендации по обнаружению и защите
- Провести аудит зависимостей: проверить все прямые и транзитивные модули на предмет использования golang.org/x/crypto и подозрительных подмен (например, github.com/xinfeisoft/crypto).
- Использовать проверку целостности
go.sumи подписывание модулей там, где это возможно. - Ограничить привилегии облачных образов: убрать или переименовать стандартные аккаунты, ограничить SSH-доступ, использовать управляемые ключи и MFA.
- Мониторить изменения в
authorized_keysи конфигурациях iptables, а также неожиданные процессы, загружающие файлы с внешних URL. - Фильтровать и контролировать исходящий трафик: блокировать неизвестные HTTP(S) POST запросы и подозрительные домены/URL.
- Проводить сканирование на наличие известных индикаторов компрометации (IOC) для Rekoobe Linux и связанных с ним артефактов (например, файлы
555.mp5или аналогичные). - Внедрять практики проверки supply chain: разрешать загрузку модулей только из доверенных источников и использовать автоматизированные инструменты для сканирования вредоносного кода в зависимостях.
- При подозрении на компрометацию — изолировать хост, аннулировать скомпрометированные ключи и пароли, расследовать и восстановить систему из надёжных образов.
Вывод
Случай с github.com/xinfeisoft/crypto демонстрирует, насколько уязвимы цепочки поставок ПО и как эффективно злоумышленники используют доверие к широко принимаемым библиотекам. Комбинация маскировки, многоступенчатой загрузки полезной нагрузки и перехвата вводимых данных делает угрозу серьёзной для организаций, особенно тех, кто опирается на облачные образы с учетной записью ubuntu. Необходим системный подход: контроль зависимостей, мониторинг систем и сеть, а также проактивные меры по ограничению привилегий и защите каналов управления.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.
