Разработчики репозитория Python Package Index (PyPI) вновь временно приостанавливают регистрацию пользователей и создание новых проектов. Как и в прошлый раз, это решение связано с наплывом злоумышленников, которые попытались загрузить в PyPI сотни вредоносных пакетов с названиями, имитирующими настоящие проекты.
Первыми подозрительную активность заметили специалисты компании Checkmarx. По их словам, более 350 пакетов, загруженных в репозиторий в период с 27 по 28 марта 2024 года, содержали вредоносный код в файле setup.py, который запускался при установке и пытался получить дополнительную полезную нагрузку с удаленного сервера.
Чтобы избежать обнаружения, атакующие зашифровали вредоносный код с помощью модуля Fernet, а URL-адрес удаленного ресурса генерировался динамически, когда это было необходимо.
Итоговая полезная нагрузка этой кампании представляла собой инфостилер, который закреплялся в системе и похищал данные, хранящиеся в браузерах, включая учетные данные, cookie и данные криптовалютных расширений.
В своем отчете исследователи перечисляют полный список найденных вредоносных записей, которые использовали тайпсквоттинг и пытались выдать себя за многочисленные легитимные пакеты.
Также отчет об этой атаке подготовила и компания Check Point. Ее специалисты считают, что список вредоносных пакетов насчитывал более 500 экземпляров и был развернут в два этапа. При этом каждый пакет публиковался от лица уникальной учетной записи, с разными именами и email-адресами, то есть атака явно была автоматизирована.
Исследователи отмечают, что все пакеты имели одинаковый номер версии, содержали одинаковый вредоносный код, а их имена были сгенерированы случайным образом.
В итоге вчера разработчики PyPI были вынуждены приостановить создание новых проектов и регистрацию новых пользователей. В сообщении, которое можно было видеть прямо на главной странице, не объяснялось, что произошло, и когда работа продолжится в штатном режиме.
Примерно через 10 часов PyPI возобновил регистрацию пользователей и создание проектов, однако никаких заявлений команда репозитория так и не сделала, ограничившись кратким сообщением, что пауза была связана с некой вредоносной кампанией.
Напомним, что это не первый подобный случай за последнее время. Так, в мае прошлого года команда PyPI уже прибегала к аналогичным мерам из-за активности злоумышленников и огромного потока вредоносных пакетов.