Пакет маскировался под помощника, но тайно работал на хакеров.
Исследователи выявили вредоносный пакет в репозитории PyPI, который замаскирован под утилиту для работы с Discord, но на деле содержит полноценный троян удалённого доступа. Речь идёт о пакете под названием discordpydebug, загруженном 21 марта 2022 года. С момента появления он был скачан более 11 500 раз и до сих пор доступен для установки, несмотря на отсутствие обновлений.
На первый взгляд, пакет выглядит как простой инструмент для разработчиков, использующих библиотеку Discord.py. Однако специалисты из команды Socket установили , что внутри скрывается вредоносный код, способный связываться с внешним сервером и выполнять команды, полученные от оператора.
Троян поддерживает функции чтения и записи файлов по команде, а также выполнение команд оболочки, что даёт злоумышленнику возможность читать конфиденциальные данные, в том числе токены и учётные данные, изменять файлы, загружать дополнительный вредоносный код и отправлять информацию наружу.
Особенностью вредоносной программы стало то, что она использует исходящие HTTP-запросы для связи с сервером управления, что позволяет обходить многие межсетевые экраны и системы мониторинга — особенно в средах разработки с низким уровнем контроля. При этом код не содержит инструментов для закрепления в системе или повышения привилегий, что делает его простым, но достаточно опасным.
Параллельно с этим инцидентом специалисты Socket выявили целую серию поддельных библиотек в репозитории npm, которые выдаются за популярные пакеты из других экосистем. Среди них оказались клоны таких известных библиотек, как beautifulsoup4, apache-httpclient, opentk и seaborn. Все фальшивые пакеты используют одну и ту же инфраструктуру, содержат схожие по структуре обфусцированные вредоносные скрипты и ведут на один IP-адрес. Это указывает на координированную кампанию, вероятно, организованную одним злоумышленником.
Обнаруженные npm-библиотеки включают механизмы обхода защиты, запускают вредоносные сценарии, крадут данные и могут долго сохранять присутствие в системе. Такие атаки демонстрируют уязвимость цепочек поставок ПО и необходимость тщательной проверки источников стороннего кода, особенно при работе в средах с открытым исходным кодом.