В каталоге Python Package Index нашли несколько пакетов со скрытыми майнерами. Проблемы были в пакетах maratlib, maratlib1, matplatlib-plus, mllearnlib, mplatlib и learninglib, имена которых были придуманы в честь самого себя, а также похожими по написанию на популярные библиотеки (matplotlib) с расчётом, что пользователь ошибётся при написании или попросту перепутает название пакета и не заметит отличий. Пакеты были размещены в апреле под учётной записью nedog123 (другие подписи/ники: Marat Nedogimov и maratoff).
Вот небольшая статистика скачиваний за два месяца:
- maratlib: 2,371
- maratlib1: 379
- matplatlib-plus: 913
- mllearnlib: 305
- mplatlib: 318
- learninglib: 626
Суммарно выходит около 5000 раз, но учитывая зависимости речь скорее идёт о 2500 загрузках.
Вредоносный код был размещён в библиотеке maratlib, которая использовалась в остальных пакетах в форме зависимости. Сам код был скрыт с использованием самописной обфускации, не определяемой типовыми утилитами, и запускался при выполнении сборочного скрипта setup.py, который выполняется во время установки пакета. Далее с GitHub скачивался один из скриптов seo.sh, aza.sh, aza2.sh или aza-obf.sh, который уже загружал сам майнер Ubqminer или T-Rex.
>>> Подробности