Злоумышленники взломали учётную запись фриланс-платформы Toptal на GitHub и опубликовали вредоносные пакеты npm. Последние содержали код для кражи данных, который собирал токены аутентификации GitHub, а затем стирал информацию с систем жертв.
Toptal поддерживает внутренние инструменты для разработки и дизайн-системы, включая Picasso. Инструменты и системы доступны через GitHub и npm.
Хакеры взломали GitHub-аккаунт Toptal 20 июля и сразу же опубликовали все 73 доступных репозитория, обнародовав частные проекты и исходный код. В последующие дни злоумышленники модифицировали исходный код Picasso на GitHub, включив в него вредоносное ПО. В итоге они опубликовали 10 вредоносных пакетов в npm, выдав их за легитимные обновления.
Вредоносные пакеты и модифицированные версии:
@toptal/picasso-tailwind (v3.1.0)
@toptal/picasso-charts (v59.1.4)
@toptal/picasso-shared (v15.1.0)
@toptal/picasso-provider (v5.1.1)
@toptal/picasso-select (v4.2.2)
@toptal/picasso-quote (v2.1.7)
@toptal/picasso-forms (v73.3.2)
@xene/core (v0.4.1)
@toptal/picasso-utils (v3.2.0)
@toptal/picasso-typography (v4.1.4)
Вредоносные пакеты загрузили примерно 5 тыс. раз, прежде чем их обнаружили ИБ-специалисты. Хакеры внедрили вредоносный код в файлы package.json, чтобы добавить две функции: кража данных (скрипт preinstall) и очистку хостов (скрипт postinstall).
Первый извлекает токен аутентификации CLI жертвы и отправляет его на контролируемый злоумышленником URL веб-перехватчика, предоставляя несанкционированный доступ к аккаунту GitHub жертвы. После извлечения данных второй скрипт пытается удалить всю файловую систему при помощи команды sudo rm -rf —no-preserve-root / в системах Linux или рекурсивно удаляет файлы в Windows.
Платформа Socket сообщила, что Toptal прекратила поддержку вредоносных пакетов 23 июля и вернулась к безопасным версиям. В Socket добавили, что первоначальный метод взлома остаётся неизвестным.
Источник: habr.com