Ssylka

Уязвимость заброшенного домена в экосистеме Python открывает вектор атак на цепочку поставок

Исследователь Владимир Пезо из компании ReversingLabs, специализирующейся на безопасности цепочек поставок программного обеспечения, обнаружил критическую проблему в устаревших пакетах Python. В репозитории Python Package Index (PyPI) был выявлен уязвимый код, создающий риск компрометации через захват домена. Основной причиной угрозы стал отказ от своевременного вывода из эксплуатации модуля «Distribute», из-за чего в проектах сохранились опасные загрузочные скрипты.
Уязвимость заброшенного домена в экосистеме Python открывает вектор атак на цепочку поставок
Изображение носит иллюстративный характер

Техническая суть проблемы кроется в инструменте автоматизации сборки и развертывания zc.buildout, а конкретно в старом скрипте инициализации среды bootstrap.py. Этот файл предназначен для автоматической загрузки, сборки и установки библиотек. В процессе работы он извлекает и запускает установочный скрипт distribute_setup.py. Триггером для выполнения вредоносного действия служит попытка установки «Distribute», происходящая либо по умолчанию, либо при использовании опций командной строки -d или --distribute. Механизм включает извлечение полезной нагрузки с жестко закодированного домена, что является паттерном, характерным для вредоносного ПО.

Центральным элементом уязвимости выступает целевой домен python-distribute[.]org. Этот устаревший веб-адрес выставлен на продажу с 2014 года и в настоящее время находится в премиальном ценовом диапазоне, используется для генерации рекламных доходов. Угроза заключается в латентном риске: злоумышленники могут приобрести этот домен и разместить на нем вредоносный код. Если загрузочный скрипт будет случайно запущен разработчиком, это приведет к выполнению атаки, потенциальным итогом которой может стать кража конфиденциальных данных.

Уязвимый скрипт, обращающийся к указанному домену, содержится в ряде пакетов PyPI. В список затронутых проектов входят tornado (в версии для разработки и обслуживания), pypiserver, roman, xlutils и testfixtures. Особо отмечается пакет slapos.core, который до сих пор поставляет этот уязвимый код. Исторически модуль «Distribute» был недолговечным форком проекта Setuptools, созданным из-за отсутствия активной разработки последнего. В 2013 году функции форка были интегрированы обратно в Setuptools, что сделало «Distribute» устаревшим, однако скрипт, изначально созданный для загрузки форка вместо оригинала, остался в кодовой базе.

Существуют определенные факторы, снижающие вероятность немедленной эксплуатации. Скрипт не запускается автоматически при установке пакета и написан на языке Python 2, что делает невозможным его выполнение в среде Python 3 без модификаций. Эксперты классифицируют эту угрозу как «ненужную поверхность атаки», реализация которой зависит от того, удастся ли обманом заставить разработчиков запустить устаревший код.

Для демонстрации реальности подобных угроз приводится сравнительный пример инцидента 2023 года с пакетом npm под названием fsevents. Уязвимости был присвоен идентификатор CVE-2023-45311 и критический рейтинг CVSS 9.8. Злоумышленник захватил контроль над невостребованным облачным ресурсом по адресу fsevents-binaries.s3-us-west-2.amazonaws[.]com. В результате пользователям, устанавливавшим определенные версии пакета, отправлялись вредоносные исполняемые файлы.

Параллельно с описанной проблемой была зафиксирована активность вредоносного пакета spellcheckers, обнаруженного системой HelixGuard. Пакет, загруженный пользователем под ником leo636722 15 ноября 2025 года, ложно позиционировался как инструмент для проверки орфографии с использованием «OpenAI Vision». На самом деле ПО содержало бэкдор и троян удаленного доступа (RAT). Цепочка атаки включала соединение с внешним сервером, загрузку полезной нагрузки следующей стадии и выполнение подконтрольного атакующему кода Python через функцию exec(), обеспечивая полный удаленный контроль над хостом жертвы. До момента удаления пакет был скачан 955 раз.


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

18647Как глубокие разломы земной коры способны «исцеляться» всего за несколько часов после... 18646Телескоп Fermi вероятно зафиксировал первый в истории сигнал от темной материи 18645Варварское расчленение и вековая тайна уничтожения мумии Тутанхамона 18644Загадочная стопа из буртеле подтвердила сосуществование разных видов предков человека 18643Уязвимость заброшенного домена в экосистеме Python открывает вектор атак на цепочку... 18642RPAM как эволюция управления привилегированным доступом в гибридных IT-средах 18641Искусственный интеллект впервые провел автономную кибератаку под руководством китайских... 18640Скрытая волчья родословная обнаружена в геноме большинства современных собак 18639Редчайшее осложнение от инъекций синтола привело к тяжелой гиперкальциемии у жителя Польши 18638Почему последняя неделя ноября считается идеальным временем для выбора электрической... 18637Испытание наблюдательности в распознавании фрагментов древней истории 18636Северокорейские хакеры атакуют разработчиков через фальшивые собеседования и реестр npm 18635Критическая уязвимость Whisper Leak позволяет хакерам читать зашифрованную переписку с ИИ 18634Стоит ли покупать лучший по тестам очиститель Levoit Core 600S-P по рекордно низкой цене? 18633Риски отмены препаратов GLP-1 перед зачатием: новые данные о чрезмерном наборе веса и...