-1.9 C
Москва
Воскресенье, 23 февраля, 2025

Go Module Mirror три года распространял бэкдор и его заметили только сейчас — Tproger

Go Module Mirror три года распространял бэкдор из-за типосквоттинга. Бэкдор в boltdb-go/bolt угрожал тысячам проектов, но был удалён лишь в 2025 году

Исследователи обнаружили, что Go Module Mirror — официальный прокси-сервис от Google для загрузки Go-модулей — три года распространял бэкдор.

Всё это время разработчики могли случайно установить зараженный пакет вместо оригинального, даже не подозревая об угрозе.

Речь идёт о поддельном модуле boltdb-go/bolt, который маскировался под популярную библиотеку boltdb/bolt.

Этот пакет — зависимость для более чем 8000 других проектов, что делает атаку особенно опасной.

Как это произошло?

Хакеры использовали метод «типосквоттинга»: создали почти идентичное название, надеясь, что кто-то ошибётся при вводе команды. Вредоносный код появился ещё в 2021 году и попал в кэш Go Module Mirror.

🔥 GitHub Copilot стал полностью бесплатным внутри VSCodetproger.ru

После этого злоумышленники стерли следы — обновили репозиторий на GitHub, заменив бэкдор чистым кодом. Однако механизм Go не очищает закэшированные версии, поэтому прокси продолжал раздавать заражённый пакет.

Читать также:
«Моя 2060 начинает плавиться от одного взгляда на это»: для Warhammer 40,000: Space Marine 2 вышел набор 4K-текстур, который весит больше самой игры

Что делал бэкдор?

При установке бэкдор открывал удалённый доступ к устройству. Он подключался к скрытому серверу, позволял хакерам выполнять команды, а также автоматически перезапускался при сбоях.

Сервер для управления атакой находился в сети Hetzner Online — уважаемого хостинг-провайдера. Это помогло обойти антивирусы и затруднило обнаружение атаки.

Почему это заметили только сейчас?

Компания Socket обнаружила бэкдор только в конце января 2025 года.

Они сразу же запросили его удаление, но Google не торопилась. Лишь после второго обращения 3 февраля заражённый модуль был исключён из Go Module Mirror.

Какие выводы?

Этот случай успешно продемонстрировал уязвимость механизмов кэширования.

Разработчики зависят от Go Module Mirror, но он не проверяет изменения в оригинальных репозиториях. Это означает, что если вредоносный код попал в кэш, он там остаётся навсегда, пока его не удалят вручную.

Что делать?

  • Внимательно проверять имена пакетов перед установкой.
  • Использовать инструменты безопасности, анализирующие зависимости.
  • Требовать от Google и Go Team улучшения защиты Go Module Mirror.

Хотя заражённый пакет уже удалён, никто не гарантирует, что подобное не повторится снова.

НОВОЕ НА САЙТЕ