Цитата:Исследователи из компании Sonatype обнаружили шифровальщика в официальном репозитории PyPI. В ходе расследования выяснилось, что вредонос в репозиторий загрузил школьник, а любой пользователей пакетов оказывался жертвой вымогателя.
Специалисты по информационной безопасности обнаружили в репозитории PyPI вредоносные пакеты requesys, requesrs и requesr, которые выдавали себя за популярный пакет requests. Отмечается, что вредоносы шифровали данные пользователей, но при этом не требовали выкупа и перенаправляли жертв на Discord-сервер с ключами для дешифровки.
Отмечается, что пакет requesys при запуске на машинах под управлением операционной системы Windows просматривал содержимое папок Documents, Downloads и Pictures, а после этого начинал шифровать их содержимое. Также исследователи заметили, что скрипт запускался только в том случае, если имя пользователя ПК отличалось от «GIAMI». Исследователи решили, что это никнейм автора вымогателей.
Для шифрования данных разработчик использовал модуль fernet из библиотеки для шифрования с симметричным ключом. Этот же модуль использовался для генерации ключа для расшифровки данных. Отмечается, что первые версии пакета предоставляли ключ в виде обычного текстового файла, а в версии 1.5 разработчик перешёл к обфусцированному исполняемому файлу base64.
При успешном запуске и шифровании данных пользователи видели всплывающее окно, которое предлагало перейти на Discord-сервер пользователя под никнеймом OHR (Only Hope Remains). Исследователи заметили, что сервер был открытым, и на него мог попасть любой желающий. На самом сервере был канал #ransomware-notifications, который содержал имена жертв и ключи для дешифрования.
Специалисты быстро нашли автора вредоносов. Выяснилось, что он использовал никнеймы OHR и b8ff в PyPI, Discord, GitHub и на других сайтах. На GitHub находился и код самого шифровальщика. Также у автора был обнаружен YouTube-канал с роликами про создание простых эксплойтов на Python. Также важно отметить, что автор указал в README-файле проекта, что он не несёт ответственности в случаях неправомерного использования кода. Однако, в пакетах PyPI никаких предупреждений не было и разработчик не пытался предупредить пользователей.
Исследователи попробовали связаться с разработчиком и сразу же получили ответ. Автор отметил, что шифровальщики полностью безобидные, не требуют выкуп и сразу же предлагают получить ключ для расшифровки данных. Сам разработчик представился школьником из Италии, который изучает Python, Lua и HTML. Созданием вымогателей юный разработчик занялся недавно и, как утверждает, был удивлен тем, с какой лёгкостью можно создать вредонос и заставить пользователей установить его.
Разговор с разработчиком помог предотвратить новые жертвы среди пользователей. Школьник согласился переименовать пакет requesys, чтобы пользователи больше не путали его с requests. Пакеты requesrs и requesr удалены из репозитория PyPI, но не до конца ясно, кем. Это могли сделать как модераторы, так и сам разработчик.
Источник.
Вот тоже не особо понимаю, почему сейчас считается нормальным ставить тонны не пойми чего из помоек вроде нпм, мавена или вот этого вот пистона. С ужасом всегда смотрю на сотню пакетов, который тянет мавен при сборке проекта.