Инциденты

Компрометация Telnyx на PyPI: вредоносные версии Python SDK 4.87.1 и 4.87.2 распространяли кражу секретов

Маша Даровская
By Маша Даровская , IT-редактор и автор
Компрометация Telnyx на PyPI: вредоносные версии Python SDK 4.87.1 и 4.87.2 распространяли кражу секретов
Обложка © Anonhaven

Официальный Python-пакет telnyx на PyPI оказался скомпрометирован: 27 марта 2026 года в реестр попали две вредоносные версии — 4.87.1 и 4.87.2. По данным самой Telnyx, вредоносный код ограничен каналом распространения через PyPI, а платформа, API и инфраструктура компании затронуты не были. Опасность была в другом: заражённые версии могли запускать вредоносный код уже при обычном import telnyx, а затем загружать и исполнять полезную нагрузку для кражи секретов и закрепления в системе.

Компания Telnyx выпустила официальное уведомление о безопасности, в котором сообщила, что 27 марта 2026 года в 03:51:28 UTC на PyPI опубликованы две несанкционированные версии её Python SDK: 4.87.1 и 4.87.2. Обе версии содержали вредоносный код, их поместили в карантин к 10:13 UTC того же дня. Telnyx отдельно подчеркнула, что инцидент не затронул саму платформу, продакшн API, голосовые сервисы, инфраструктуру сообщений и другие основные сервисы компании.

То есть речь идёт не о взломе облачной платформы Telnyx, а о компрометации цепочки поставки ПО — когда атакующие подменяют или заражают легитимный пакет в репозитории зависимостей. Проще говоря, разработчик мог установить «официальный» пакет из привычного источника, а получить уже заражённую сборку.

По данным GitHub-репозитория Telnyx, вредоносный код внедрили в файл telnyx/_client.py. Исследователи указали, что в PyPI-артефактах появились дополнительные импорты, декодер base64, встроенный большой полезный фрагмент кода и функции, которые запускались прямо на уровне модуля. Вредоносное поведение срабатывало уже при импорте библиотеки, а не только после явного вызова какой-то функции разработчиком. Это делает атаку особенно неприятной для CI/CD, тестовых сборок и серверных приложений, где зависимости устанавливаются и импортируются автоматически.

Исследователи Socket и другие компании по безопасности описали эту атаку как supply chain, то есть атаку на цепочку поставки программного обеспечения. Под удар попал официальный SDK, который используют для интеграции сервисов Telnyx — голосовой связи, SMS/MMS, WhatsApp, факса, IoT и SIP-транкинга — в серверные приложения.

Telnyx отдельно перечислила, кто мог пострадать. Риск был у тех, кто установил или обновил пакет telnyx в промежутке между 03:51 UTC и 10:13 UTC 27 марта 2026 года, запускал pip install telnyx без фиксации версии и получил именно 4.87.1 или 4.87.2, либо получил пакет как транзитивную зависимость — то есть не устанавливал его напрямую, но он подтянулся автоматически как зависимость другого пакета. Пользователи версии 4.87.0 и ниже, а также те, кто обращался к Telnyx API напрямую без Python SDK, по заявлению компании, не затронуты.

По данным Telnyx и исследователей, вредоносная нагрузка доставлялась с сервера 83.142.209.203:8080, а одним из приёмов была стеганография в WAV-файлах. Это значит, что вредоносный код скрывался внутри файла, который внешне выглядел как обычный аудиофайл .wav. Такой подход помогает обходить часть базовых проверок, потому что защитные механизмы не всегда ожидают, что аудио окажется контейнером для следующего этапа атаки.

Поведение различалось в зависимости от операционной системы. На Windows, согласно техническому разбору, загружался исполняемый файл, который сохранялся как msbuild.exeв папке автозагрузки Windows, чтобы запускаться при входе пользователя в систему. Это уже классическое закрепление в системе — механизм, который позволяет вредоносному коду переживать перезагрузку и не исчезать после первого сеанса. На Linux и macOS вредоносный код запускал отдельный процесс, извлекал следующую стадию атаки и собирал чувствительные данные из системы.

Среди целей кражи на Linux и macOS исследователи называют SSH-ключи, учётные данные, облачные токены, криптокошельки, переменные окружения и другие секреты. Это особенно опасно для разработческих и серверных окружений: такие машины часто содержат доступ к Git-репозиториям, облачной инфраструктуре, контейнерным реестрам, production-базам и внутренним API. Один заражённый пакет в этом случае становится точкой входа в инфраструктуру.

Telnyx рекомендует в случае установки вредоносной версии считать окружение скомпрометированным. Компания прямо советует откатиться на telnyx==4.87.0, а затем перевыпустить все секреты, к которым был доступ из заражённой среды: API-ключи, SSH-ключи, учётные данные баз данных, токены облачных провайдеров и любые секреты из переменных окружения и конфигурационных файлов. Также предлагается проверять исходящие соединения к известной инфраструктуре атакующих и отдельно пересмотреть CI/CD-пайплайны и Docker-сборки, которые могли подтянуть заражённый пакет автоматически.

По данным GitHub-репозитория проекта, вредоносный код присутствовал только в PyPI-артефактах, а исходники и релиз 4.87.0 в GitHub оставались чистыми. Это косвенно указывает на вероятную компрометацию учётных данных для публикации в PyPI, а не на изменение обычного исходного кода в репозитории. 

Telnyx также связала этот инцидент с более широкой серией атак на цепочку поставки ПО, где ранее фигурировали Trivy, Checkmarx и LiteLLM. Независимые исследователи и профильные издания тоже пишут, что текущая атака вписывается в более широкий паттерн последних дней, а по инфраструктуре и технике её связывают с кластером, который другие компании атрибутируют как TeamPCP. По данным BleepingComputer, пакет telnyx — популярный SDK с более чем 740 тысячами загрузок в месяц на PyPI.

Есть новость? Станьте автором.

Мы сотрудничаем с независимыми исследователями и специалистами по кибербезопасности. Отправьте нам новость или предложите статью на рассмотрение редакции.

Вопросы по теме

Что именно произошло?
В PyPI были опубликованы две вредоносные версии официального Python SDK Telnyx — 4.87.1 и 4.87.2. Они содержали внедрённый вредоносный код и были доступны несколько часов, после чего их поместили в карантин.
Была ли взломана сама платформа Telnyx?
По заявлению Telnyx — нет. Компания пишет, что платформа, API, production-инфраструктура, голосовые и messaging-сервисы не были скомпрометированы. Инцидент был ограничен каналом распространения Python SDK через PyPI.
Какие версии опасны?
Опасными признаны telnyx==4.87.1 и telnyx==4.87.2. Последняя известная чистая версия — 4.87.0.
Что делать, если установлен пакет 4.87.1 или 4.87.2?
Telnyx советует считать среду скомпрометированной: откатиться на 4.87.0, проверить исходящие соединения, пересмотреть CI/CD и Docker-сборки, а главное — перевыпустить все секреты, к которым окружение могло иметь доступ.
Какие секреты могли быть интересны атакующим?
Исследователи упоминают API-ключи, SSH-ключи, облачные токены, переменные окружения, учётные данные и другие чувствительные данные, особенно в Linux/macOS-окружениях.