Атака на цепочку поставок: 583 вредоносных файла GitHub Actions превратили раннеры в ботнет для эксплуатации cPanel
Масштабная кампания по компрометации цепочки поставок, раскрытая 22–23 июля 2026 года, началась со взлома аккаунта PHP разработчика dinushchathurya на Packagist, что позволило атакующим внедрить 583 вредоносных файла... Вредоносные файлы GitHub Actions (workflow .yml) превращали бесплатные облачные раннеры GitHub в...
ОпубликовалОтредактировано с помощью DeepSeek-V4-FlashИзображения созданы с помощью GPT Image 1.5
Масштабная кампания по компрометации цепочки поставок, раскрытая 22–23 июля 2026 года, началась со взлома аккаунта PHP разработчика dinushchathurya на Packagist, что позволило атакующим внедрить 583 вредоносных файла...
Вредоносные файлы GitHub Actions (workflow .yml) превращали бесплатные облачные раннеры GitHub в распределенную сеть для сканирования интернета и эксплуатации критической уязвимости CVE 2026 41940 в панелях управления...
Уязвимость CVE 2026 41940 (CVSS 9.8) — это предварительный обход аутентификации, исправленный 28 апреля 2026 года.
В ходе атаки были похищены ключи AWS, токены GitHub и GitLab, API ключи (OpenAI, Google, Stripe), учетные данные SSH, пароли баз данных и другая конфиденциальная информация.
Search & fact-check with cited sources for What is the large-scale campaign disclosed in July 2026 in which attackers compromised a PHP deveSimplified depiction of a supply chain attack vector, similar to the campaign that weaponized GitHub Actions workflows to distribute exploits.
Промпт ИИ
Create a landscape editorial hero image for this Studio Global article: Search & fact-check with cited sources for What is the large-scale campaign disclosed in July 2026 in which attackers compromised a PHP deve. Article summary: Here are the confirmed facts, with sources:. Topic tags: general, government, general web, user generated. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fake numbers, clickbait thumbnails, icons, and tiny thumbnail layouts. Make it useful as an illustrative visual, not as factual evidence.
openai.com
В конце июля 2026 года исследователи безопасности раскрыли беспрецедентную по масштабу кампанию по атаке на цепочку поставок ПО и CI/CD. Злоумышленники взломали аккаунт PHP-разработчика на Packagist — главном реестре PHP-пакетов — и использовали его для внедрения сотен вредоносных файлов GitHub Actions workflow в репозитории с открытым исходным кодом. Целью было не заражение PHP-кода, а превращение бесплатных CI/CD-раннеров GitHub в распределенную и одноразовую ботнет-сеть для эксплуатации критической уязвимости в cPanel и WHM — широко используемом программном обеспечении для управления веб-хостингом .
Ниже представлен разбор кампании, уязвимости, которую она эксплуатировала, украденных данных, истинного масштаба операции и необходимых мер защиты.
Кампания: Превращение GitHub Runners в ботнет
Studio Global AI
Продолжайте свое исследование
На этой странице есть ответ, подтвержденный источником, который вы можете продолжить внутри Studio Global.
Каков краткий ответ на вопрос «Атака на цепочку поставок: 583 вредоносных файла GitHub Actions превратили раннеры в ботнет для эксплуатации cPanel»?
Масштабная кампания по компрометации цепочки поставок, раскрытая 22–23 июля 2026 года, началась со взлома аккаунта PHP разработчика dinushchathurya на Packagist, что позволило атакующим внедрить 583 вредоносных файла...
Какие ключевые моменты необходимо проверить в первую очередь?
Масштабная кампания по компрометации цепочки поставок, раскрытая 22–23 июля 2026 года, началась со взлома аккаунта PHP разработчика dinushchathurya на Packagist, что позволило атакующим внедрить 583 вредоносных файла... Вредоносные файлы GitHub Actions (workflow .yml) превращали бесплатные облачные раннеры GitHub в распределенную сеть для сканирования интернета и эксплуатации критической уязвимости CVE 2026 41940 в панелях управления...
Что мне делать дальше на практике?
Уязвимость CVE 2026 41940 (CVSS 9.8) — это предварительный обход аутентификации, исправленный 28 апреля 2026 года.
Точка входа: Скомпрометированный аккаунт Packagist
Атака началась с компрометации аккаунта на Packagist, принадлежащего легитимному PHP- и DevOps-разработчику dinushchathurya, в период с 12 по 13 июля 2026 года . Packagist спроектирован так, чтобы автоматически синхронизировать версии пакетов из их исходных репозиториев. Эта функция была использована атакующими: они опубликовали вредоносные версии разработки ("dev-main") всех десяти пакетов, связанных с аккаунтом разработчика, и Packagist автоматически загрузил их . Десять пакетов были легитимными PHP-библиотеками, но атака не была нацелена на их пользователей через PHP-код.
583 вредоносных файла workflow
Суть атаки заключалась не в самом PHP-коде; PHP-библиотеки оставались безвредными: у них не было хуков установки или вредоносной сетевой активности . Вместо этого атакующие внедрили 583 вредоносных файла GitHub Actions workflow (.github/workflows/*.yml) в исходные репозитории разработчика. Каждая затронутая версия пакета содержала от 55 до 62 таких файлов . Файлы GitHub Actions workflow — это файлы YAML, определяющие автоматизированные задачи, например запуск тестов или развертывание кода. Атакующие использовали эту легитимную инфраструктуру автоматизации.
Вредоносный механизм
Как только форк или копия скомпрометированного репозитория запускали workflow (например, по событию push), вредоносный файл .yml давал указание раннеру Ubuntu, предоставленному GitHub, выполнить следующие действия :
Определить архитектуру процессора раннера.
Загрузить полезную нагрузку для сканирования и эксплуатации с командного сервера (C2) по IP-адресу 43[.]228[.]157[.]68.
Просканировать интернет на предмет систем, работающих под управлением cPanel и WHM.
Автоматически эксплуатировать обнаруженные системы, используя описанную ниже уязвимость.
Эксплуатировать украденные данные обратно на C2-сервер.
Это фактически превращало каждый запущенный workflow в узел сканирования и эксплуатации, используя бесплатную инфраструктуру GitHub как распределенную платформу для атаки .
Уязвимость: CVE-2026-41940
Целью кампании была CVE-2026-41940 — критическая уязвимость в cPanel и WebHost Manager (WHM) .
Тип: Предварительный обход аутентификации .
Серьезность: CVSS 9.8 (критический) .
Основная причина: Уязвимость CRLF-инъекции (возврат каретки и перевод строки) в обработчике базовой аутентификации cpsrvd. Неаутентифицированный злоумышленник мог отправить специально сформированный HTTP-заголовок Authorization, содержащий необработанные символы новой строки. Это позволяло внедрить произвольные свойства в файл сессии, такие как user=root и hasroot=1, что фактически давало доступ уровня root к интерфейсу WHM без действующего пароля .
Дата исправления: cPanel выпустила обновление безопасности 28 апреля 2026 года. Это означает, что у атакующих было несколько месяцев на анализ патча до начала данной кампании.
Что было украдено
После успешной эксплуатации скомпрометированного сервера cPanel/WHM вредоносная нагрузка была спроектирована для сбора широкого спектра учетных данных и секретов. Основные цели включали :
Облачные учетные данные: ключи Amazon Web Services (AWS).
Токены систем контроля версий: токены GitHub, токены GitLab.
API-ключи: ключи OpenAI, Google API.
Платежные системы: ключи Stripe.
Учетные данные почтовых сервисов: (например, Mailgun, SendGrid).
Инфраструктура: приватные ключи SSH, учетные данные баз данных.
Конфигурационные данные: конфигурации Git remote.
Кража такого широкого спектра учетных данных свидетельствует о всеядном и оппортунистическом захвате любых ценных токенов доступа, присутствующих на скомпрометированном сервере .
Масштаб кампании: Скомпрометированы тысячи дополнительных репозиториев
583 файла workflow в 10 пакетах Packagist были лишь начальным открытием. Используя общие индикаторы атакующих, такие как домен DNSHook для обратной связи и повторное использование кода, исследователи обнаружили гораздо более масштабную операцию :
~6 100 файлов workflow были напрямую связаны с той же начальной инфраструктурой атакующих .
От 15 000 до 16 000 файлов workflow на GitHub были найдены с соответствующими шаблонами, связанными с кампанией .
Это огромное несоответствие убедительно свидетельствует о том, что атакующие скомпрометировали гораздо больше аккаунтов разработчиков и репозиториев, помимо одного аккаунта dinushchathurya. Кампания была не единичным сбоем, а скоординированной операцией с множеством аккаунтов. The Hacker News сообщила об отдельной, более ранней атаке на цепочку поставок Packagist в мае 2026 года, которая скомпрометировала 8 пакетов со связанными вредоносными элементами , что еще раз подчеркивает уязвимость экосистемы.
Сохраняющийся риск: Почему кампания, вероятно, все еще активна
Кампания представляет постоянную угрозу, поскольку инфраструктура атакующих не полностью нейтрализована. Кампания может продолжаться через :
Форки и зеркала: Вредоносные файлы workflow могут сохраняться в форкнутых или зеркальных копиях скомпрометированных репозиториев.
Кэшированные снимки: Собственные кэши GitHub могут содержать вредоносные версии workflow.
Украденные учетные данные: Уже экспфильтрованные учетные данные остаются в распоряжении атакующих и могут быть использованы для lateral movement или будущих атак.
Уцелевшая C2-инфраструктура: C2-сервер (43[.]228[.]157[.]68) может все еще быть работоспособным и активно получать данные .
Хотя оригинальный аккаунт разработчика на Packagist был заблокирован, огромное количество совпадающих файлов workflow (до ~16 000) означает, что операция имеет широкий след, который трудно полностью искоренить .
Необходимые защитные меры
Основываясь на опубликованном анализе, организациям и разработчикам необходимо немедленно предпринять следующие шаги :
Немедленно установите обновление cPanel/WHM: CVE-2026-41940 была исправлена 28 апреля 2026 года. Любая установка cPanel или WHM (версий после 11.40), которая не обновлена, тривиально эксплуатируется неаутентифицированными удаленными атакующими. Это самый важный шаг.
Проверьте все GitHub Actions workflow: Просмотрите каждый файл workflow YAML в ваших репозиториях, особенно те, которые:
Загружают и выполняют внешние бинарные файлы.
Устанавливают исходящие сетевые соединения.
Запускаются по триггерам push или workflow_dispatch без ручной проверки.
Присутствуют в ветках разработки или функциональных ветках, которые могут автоматически синхронизироваться менеджером пакетов.
Смените все скомпрометированные учетные данные: Считайте, что любые учетные данные, присутствовавшие на скомпрометированном сервере cPanel/WHM, были украдены. Это включает, но не ограничивается:
Ключами облачных провайдеров (AWS, GCP, Azure).
API-токенами (OpenAI, Google, Stripe).
Ключами SSH и паролями баз данных.
Токенами систем управления исходным кодом (GitHub, GitLab).
Проверьте наличие известных индикаторов компрометации (IOC): Поищите в своих логах сетевые подключения к IP-адресу C2 атакующих (43[.]228[.]157[.]68) и известному домену DNSHook для обратной связи .
Усильте защиту репозиториев и управление пакетами:
Включите правила защиты веток для всех веток разработки.
Требуйте подписанные коммиты.
Избегайте автоматической синхронизации реестров пакетов (таких как Packagist) непосредственно из веток репозитория без этапа проверки .
Проверьте версии разработки Packagist: При аудите зависимостей обязательно проверяйте версии разработки (dev-master, dev-main) на наличие неожиданных файлов .github/workflows/, так как PHP-код может быть чистым, в то время как атака полностью скрыта в конфигурации CI/CD .