Открытый пакет с миллионом ежемесячных загрузок украл учетные данные пользователей

Открытый пакет с миллионом ежемесячных загрузок украл учетные данные пользователей

Открытое программное обеспечение с более чем 1 миллионом ежемесячных загрузок было скомпрометировано после того, как злоумышленник воспользовался уязвимостью в рабочем процессе учетных записей разработчиков, что дало доступ к их подписным ключам и другой конфиденциальной информации.

В пятницу неизвестные злоумышленники воспользовались уязвимостью, чтобы выпустить новую версию элемент-данных, интерфейса командной строки, который помогает пользователям отслеживать производительность и аномалии в системах машинного обучения (machine learning). Когда он запускался, вредоносный пакет искал конфиденциальные данные, включая профили пользователей, учетные данные хранилищ, ключи облачных провайдеров, токены API и ключи SSH, заявили разработчики. Вредоносная версия была помечена как 0.23.3 и была опубликована в учетных записях Python Package Index и Docker image разработчиков. Она была удалена примерно через 12 часов, в субботу. Elementary Cloud, пакет Elementary dbt и все другие версии CLI не были затронуты.

Предположить компрометацию

«Пользователи, которые установили 0.23.3 или выкачали и запустили пострадавший образ Docker, должны предположить, что любые учетные данные, доступные в среде, где он запускался, могли быть скомпрометированы», — написали разработчики.

Злоумышленник получил доступ к учетной записи разработчиков, воспользовавшись уязвимостью в действии GitHub, которое они создали. Опубликовав вредоносный код в запросе на слияние, злоумышленники смогли запустить скрипт bash, который запускался внутри учетной записи разработчика. Скрипт bash извлек конфиденциальные данные. С помощью токенов учетной записи и подписных ключей злоумышленник опубликовал вредоносный пакет элемент-данных, который был почти неотличим от законного.

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

Читать оригинал