В официальной Python-библиотеке Telnyx обнаружили вредоносный код для кражи данных.

Недавнее заражение популярной Python-библиотеки для работы с коммуникациями показало, насколько уязвимой остаётся цепочка поставок в Open Source. Вредоносный код незаметно встроили в официальный Python SDK Telnyx, который используют тысячи проектов для работы со звонками и сообщениями, и атака долгое время оставалась практически невидимой.
Команда Socket обнаружила, что версии telnyx 4.87.1 и 4.87.2, опубликованные в PyPI, содержали скрытый механизм кражи данных. Библиотека широко применяется в серверных системах и часто работает с API-ключами, инфраструктурой телефонии и пользовательскими данными, поэтому компрометация создаёт серьёзные риски. Вредоносные версии уже изолированы, а разработчикам советуют срочно откатиться к версии 4.87.0 или более ранней.
Атака оказалась многоступенчатой и продуманной. Злоумышленники внедрили код в основной файл клиента библиотеки, который автоматически загружается при любом использовании SDK. Благодаря этому вредоносный механизм запускался не при установке, а уже во время работы приложения, обходя типичные методы обнаружения.
Дальше включалась цепочка из трёх этапов. Сначала программа загружала аудиофайл с удалённого сервера. Внутри WAV-файла скрывался второй этап — зашифрованный скрипт, извлекаемый с помощью стеганографии. Затем вредоносный код запускался напрямую в памяти без записи на диск и собирал данные из системы. На финальном этапе похищенная информация шифровалась и отправлялась на сервер управления.
Подход отличался в зависимости от операционной системы. В Windows злоумышленники добивались закрепления в системе — вредоносный файл маскировался под msbuild.exe и добавлялся в автозагрузку. В Linux и macOS атака работала по принципу «собрал и исчез» — данные выгружались сразу, без следов и механизмов постоянного присутствия.
Анализ показал, что злоумышленники активно дорабатывали вредоносный код. В версии 4.87.2 они исправили ошибку, мешавшую атаке на Windows, что указывает на постоянный контроль кампании и сохранённый доступ к учётным данным публикации пакета. При этом вредоносные версии не появились в официальном репозитории Telnyx, что стало дополнительным признаком компрометации.
Инфраструктура управления использовала один сервер с загрузкой файлов под видом обычных аудиоданных. Передача данных шла по незашифрованному HTTP, однако содержимое архивов защищалось современными криптографическими методами, что делает восстановление украденной информации без ключей практически невозможным.
Специалисты связывают атаку с группой TeamPCP, которая уже проводит похожие операции через репозитории Open Source. Случай с telnyx показывает, что даже официальные SDK могут стать точкой входа для сложных атак, особенно в средах, где хранятся ключи и чувствительные данные.