Компания Phylum, специализирующаяся на безопасности цепочки поставок, обнаружила в репозитории PyPI 29 вредоносных пакетов (список можно найти ниже), которые заражали своих жертв малварью W4SP, нацеленной на хищение данных.
По словам исследователей, вредоносные пакеты имитировали реально существующие популярные библиотеки (также заимствуя их код), то есть использовали тайпсквоттинг для привлечения жертв. Согласно статистике Pepy.tech, суммарно эти пакеты были загружены более 5700 раз.
«Эта атака начинается с копирования существующих популярных библиотек и простого внедрения вредоносного оператора __import__ в готовую кодовую базу, — рассказывают эксперты. — Преимущество, которое получал злоумышленник от копирования существующих легитимных пакетов, заключалось в том, что целевая страница для пакета PyPI генерируется из setup.py и README.md. То есть атакующий сразу получал выглядящую натурально целевую страницу с рабочими ссылками и так далее. Если не проводить тщательную проверку, беглый взгляд мог привести к мысли, что это легитимный пакет».
В своем отчете аналитики подробно объясняют, с какими проблемами им пришлось столкнуться при изучении обфусцированного кода (более 71 000 символов), который оказался «довольно грязным», и через который пришлось буквально продираться.
В конечном итоге исследователи пришли к выводу, что малварь, которую распространяют эти пакеты, это инфостилер W4SP, который похищает токены Discord, файлы cookie и сохраненные пароли своих жертв.
Издание Bleeping Computer сообщает, что на этой неделе малварь в PyPI обнаружил и независимый ИБ-специалист Хауке Любберс (Hauke Lübbers). Ему удалось найти тайпсквоттерские пакеты pystile и threading, содержащие малварь GyruzPIP.
По словам эксперта, это вредоносное ПО основано на опенсорсном проекте evil-pip, который опубликован в сети «исключительно в образовательных целях». Также он обнаружил на GitHub два репозитория (1, 2), предположительно, принадлежащих авторам этой малвари, о которых сообщил команде безопасности платформы.
Любберс уже уведомил о вредоносных пакетах администраторов PyPI, хотя он полагает, что, вероятно, пакеты нужно использовать качестве зависимостей, чтобы они начали демонстрировать вредоносное поведение.
Список вредоносных пакетов, обнаруженных исследователями Phylum:
- algorithmic
- colorsama
- colorwin
- curlapi
- cypress
- duonet
- faq
- fatnoob
- felpesviadinho
- iao
- incrivelsim
- installpy
- oiu
- pydprotect
- pyhints
- pyptext
- pyslyte
- pystyle
- pystyte
- pyurllib
- requests-httpx
- shaasigma
- strinfer
- stringe
- sutiltype
- twyne
- type-color
- typestring
- typesutil