Школьник разместил шифровальщика в PyPI «ради шутки»
Эксперты из компании Sonatype обнаружили сразу три вредоносных пакета в официальном репозитории Python: requesys, requesrs и requesr — занимавшиеся тайпсквоттингом и маскирующиеся под популярный пакет Requests. Все три представляли собой шифровальщиков и были созданы скучающим школьником, пишет xakep.ru.
Любой, кто по ошибке загружал и использовал эти пакеты в своих проектах, становился жертвой довольно странной вымогательской малвари.
К моменту публикации доклада пакет requesys был скачан около 260 раз. Все три его версии содержали скрипты, которые сначала просматривали в Windows папки «Документы», «Загрузки» и «Изображения», а затем начинали шифровать файлы.
Также в коде была обнаружена одна забавная особенность: вредоносный скрипт запускался лишь в том случае, если имя пользователя ПК отличалось от «GIAMI». Видимо, это юзернейм самого автора малвари.
Если все проходило успешно, шифровальщик запускался в системе пострадавшего пользователя, который видел всплывающее сообщение с дальнейшими инструкциями: ему предлагалось связаться с автором пакета b8ff, или OHR (Only Hope Remains), через Discord-сервер.
Попасть на Discord-сервер хакера мог любой желающий. Там исследователи обнаружили канал «#ransomware-notifications, который содержал список имён пользователей 15 жертв, которые установили и запустили вредоносный пакет из PyPI. Автоматически сгенерированные сообщения также демонстрировали ключи дешифрования, которые жертвы могли использовать для разблокировки своих файлов.
При этом версии 1.0-1.4 содержали код шифрования и дешифрования в виде открытого текста, а версия 1.5 уже демонстрировала обфусцированный base64 исполняемый файл, что усложняло анализ. Но в целом он действовал так же, как малварь прошлых версий, то есть генерировал ключ шифрования/дешифрования, загружал копию ключа в Discord автора, шифровал файлы и побуждал жертв перейти в канал для спасения данных.
Аналитики без особого труда вычислили автора незамысловатого вредоноса: b8ff опубликовал код эксплойта на GitHub (с пометкой, что автор не несёт ответственности в случае неправомерного использования) и, не скрываясь, использовал этот же ник в PyPI, Discord, GitHub и на других сайтах. Оказалось, что у OHR есть даже канал на YouTube с довольно безобидными туториалами по взлому, которые теперь удалены.
Однако тайпсквоттерские пакеты не содержали никакого отказа от ответственности, то есть в их случае не было никаких заявлений и уведомлений о том, что пакеты опубликованы в рамках этичного исследования, и OHR не пытался удержать людей от заражения своих ПК. Напротив, сразу после установки пакеты запускали вредоносные скрипты.
В итоге исследователи решили связаться с автором шифровальщиков и узнать о его мотивах. B8ff легко пошел на контакт и сообщил, что вымогательский скрипт в этих пакетах являлся «полностью опенсорсным» и был частью проекта, который создавался «ради шутки». Несмотря на тот факт, что пакеты действительно шифровали пользовательские данные, автор заявил, что технически они безвредны.
«Технически это вымогатель без выкупа, — сказал b8ff, имея в виду, что он не требует денег после шифрования. — Все ключи дешифрования [отправляются] в канал #ransomware-notifications на моем сервере в Discord».
B8ff рассказал, что он из Италии и описал себя как школьника, который пока просто учится разработке и лишь недавно заинтересовался эксплойтами.
«Я был удивлен, когда понял, как легко создать такой эксплойт и насколько это интересно. Я ещё учусь в школе и на данный момент знаю Python, Lua, HTML, немного CPP и всё», — признался b8ff.
Эксперты уведомили о своей находке PyPI, но пока не получили ответа. После общения со специалистами b8ff сам помог предотвратить дальнейшие атаки и переименовал пакет requesys, чтобы разработчики, опечатавшиеся в названии requests, случайно не загружали программу-вымогатель. Два других пакета удалены из PyPI (правда неясно, самим автором добровольно или администраторами репозитория).
В закрытом коде трояны крадущие информацию давно считаются фичей.
Anonymous
10 августа 2022, 10:03
0
Да всё равно никто этот "открытый" код не читает, все тупо стягивают и в продакшен. И только когда жареных петух клюнет начинают суетиться. Но в этом раскладе что открытый код что закрытый уже пофигу.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.
Лицорука.
Пользователи опенсурсных пакетов ну просто просятся чтоб их поимели.
В закрытом коде трояны крадущие информацию давно считаются фичей.
Да всё равно никто этот "открытый" код не читает, все тупо стягивают и в продакшен. И только когда жареных петух клюнет начинают суетиться. Но в этом раскладе что открытый код что закрытый уже пофигу.
del
Пользователь отредактировал комментарий 9 августа 2022, 10:44