Разработчики VoIP-платформы Telnyx предупредили пользователей о компрометации пакета telnyx в репозитории PyPI, насчитывающего 756 тысяч загрузок в месяц и предоставляющего SDK для обращения к API Telnyx из программ на языке Python. 27 марта атакующие смогли опубликовать два вредоносных выпуска telnyx 4.87.1 и 4.87.2, получив доступ к PyPI после захвата учётных данных сопровождающего. Вредоносные версии распространялись с 6:51 до 13:13 (MSK), после чего были заблокированы администрацией PyPI. Инфраструктура, API, голосовые сервисы и платформа Telnyx не пострадали.
Компрометация была произведена в ходе более масштабной supply chain атаки TeamPCP, в ходе которой на днях были скомпрометированы Python-пакеты LiteLLM и Trivy, а также интегрирован вредоносный код в OpenVSX-дополнение Checkmarx и внедрён вредоносный червь в 68 пакетов в репозитории NPM. Используемый для шифрования отправляемых данных RSA-ключ совпадал с ключами, применявшимися в других атаках группы TeamPCP.
В сформированные атакующими версии был встроен вредоносный код, который был интегрирован в файл «_client.py» и активировался при импорте модуля. После активации с серверов атакующих загружался звуковой файл ringtone.wav для Unix-подобных систем и hangup.wav для Windows. Данные файлы успешно воспроизводились как звуковые, но содержали интегрированные при помощи стеганографии скрытые вредоносные обработчики.
На платформе Windows вредоносный обработчик сохранялся в систему как «%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\msbuild.exe» и запускался при каждом входе. В macOS и Linux осуществлялись поиск и отправка SSH-ключей, учётных данных, содержимого переменных окружения, токенов доступа к API, параметров подключения к облачным сервисам AWS, GCP, Azure и K8s, ключей от криптокошельков, паролей к СУБД и т.п. Обнаруженные данные шифровались с использованием алгоритмов AES-256-CBC + RSA-4096 и отправлялись HTTP POST-запросом на внешний хост.
Источник: opennet.ru
