Бесшумный шпион в PyPI: троян SilentSync похищает данные разработчиков

Исследователи безопасности из Zscaler ThreatLabz, Маниша Рамчаран Праджапати и Сатьям Сингх, обнаружили в репозитории Python Package Index (PyPI) два вредоносных пакета. Их целью была установка многофункционального трояна удаленного доступа (RAT) под названием SilentSync на компьютеры разработчиков, использующих операционную систему Windows.
Бесшумный шпион в PyPI: троян SilentSync похищает данные разработчиков
Изображение носит иллюстративный характер

Злоумышленники, действовавшие под псевдонимом CondeTGAPIS, загрузили пакеты sisaws и secmeasure. Первый, sisaws, был скачан 201 раз и имитировал легитимный пакет sisa, связанный с национальной системой здравоохранения Аргентины (Sistema Integrado de Información Sanitaria Argentino). Второй, secmeasure, был загружен 627 раз и маскировался под библиотеку для очистки строк и применения мер безопасности. На данный момент оба пакета удалены из PyPI.

Атака разворачивалась в несколько этапов. В пакете sisaws в инициализационный скрипт (__init__.py) была встроена вредоносная функция gen_token(). Когда разработчик импортировал пакет и вызывал эту функцию, она декодировала шестнадцатеричную строку, которая содержала команду curl. Эта команда, в свою очередь, загружала с сервиса PasteBin вторичный Python-скрипт.

Загруженный скрипт сохранялся во временном каталоге под именем helper.py и немедленно исполнялся, разворачивая на системе жертвы троян SilentSync. Пакет secmeasure использовал аналогичную встроенную функциональность для загрузки и запуска того же вредоносного программного обеспечения.

Троян SilentSync обладает широким набором возможностей. Он способен выполнять удаленные команды в оболочке, похищать отдельные файлы и целые каталоги, упаковывая их в ZIP-архивы, делать снимки экрана, а также извлекать данные из веб-браузеров. В список его целей входят Chrome, Brave, Edge и Firefox, из которых он похищает учетные данные, историю просмотров, данные автозаполнения и файлы cookie.

Несмотря на основную нацеленность на Windows, SilentSync спроектирован как кроссплатформенное ПО. Для обеспечения постоянного присутствия в системе он использует различные методы в зависимости от операционной системы. В Windows он вносит изменения в реестр, в Linux — модифицирует файл crontab для запуска при старте системы, а в macOS — регистрирует LaunchAgent.

Для связи с командным сервером (C2) вредонос использует жестко закодированный IP-адрес 200.58.107[.]25. Он отправляет HTTP GET-запрос на сервер, получает в ответ код на Python и выполняет его напрямую в оперативной памяти. Взаимодействие происходит через четыре конечные точки: /checkin для проверки соединения, /comando для запроса команд, /respuesta для отправки статуса и /archivo для выгрузки результатов команд или украденных данных.

После успешной передачи похищенной информации на командный сервер SilentSync удаляет все свои артефакты, включая временные файлы, с хост-системы. Эта тактика уклонения направлена на сокрытие следов присутствия и затруднение обнаружения атаки. Данный инцидент демонстрирует растущую угрозу атак на цепочки поставок через публичные репозитории ПО, где злоумышленники активно используют методы тайпсквоттинга и маскировки под легитимные инструменты для получения несанкционированного доступа к системам и кражи конфиденциальной информации.


Новое на сайте

20327Кости прерий: как истребление бизонов породило целую индустрию — и сама себя же уничтожила 20326Кто и зачем взламывает серверы Ollama и ComfyUI ради ключей от AWS? 20325Как злоумышленники спрятали командный сервер внутри блокчейна и почему его невозможно... 20324Брюссель заставляет Android делиться секретами с чужими ИИ-помощниками 20323WordPress: как два бага слились в одну критическую дыру, которую назвали wp2shell 20322Как китайские хакеры обманули DigiCert и украли сертификаты для подписи кода? 20321Что скрывается за уязвимостью, которую агентство США внесло в список активно используемых... 20320Автономные системы наступают быстрее, чем инфраструктура для управления ими: кто выиграет... 20319Почему в OpenSSL нашли дыру, съедающую память серверов, но не дали ей даже номер CVE? 20317SonicWall SMA 1000: как два бага превратили VPN-шлюз в бэкдор для атакующих 20316Может ли уязвимость в клиенте Zoom для Windows открыть доступ к чужому аккаунту без... 20315TELEPUZ: новый вредонос на C, который научился прятаться в Telegram, Steam и блокчейне... 20314Дома из дёрна: как исландцы триста лет прятались от холода под слоем земли и травы 20313Как один токен от чужого сервиса мог впустить злоумышленника в чужой аккаунт n8n?
Ссылка