Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
GoCD_PoC_Supply_Chain_Attack — CVE-2021-43287 CVE-2021-43288 CVE-2021-43289 CVE-2021-43290 | Kitploit
Инструменты/GitHubGitHub/higorgabrieldcf/gocd_poc_supply_chain_attack
Генерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийПост-эксплуатацияВиртуализация для безопасностиТестирование на ПроникновениеБезопасность Цепочки Поставок
Обучение и Образование
Red Teaming
GitHubhigorgabrieldcf/gocd_poc_supply_chain_attack

GoCD_PoC_Supply_Chain_Attack

CVE-2021-43287 CVE-2021-43288 CVE-2021-43289 CVE-2021-43290

Репозиторий
2271 месяц назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

GoCD 20.10.0 — PoC: CVE-2021-43287 · CVE-2021-43288 · CVE-2021-43289 · CVE-2021-43290

Autor / Author: Higor Farias — PRIDE Security

⚠️ AVISO LEGAL / LEGAL DISCLAIMER

[PT] Материал создан исключительно в образовательных целях и для исследований в области наступательной информационной безопасности. Используйте только в контролируемых средах с явного разрешения. Неправомерное использование является исключительной ответственностью пользователя.

[EN] Создано исключительно в образовательных целях и для исследований в области разрешенной наступательной информационной безопасности. Используйте только в контролируемых средах с явного письменного разрешения. Неправомерное использование является исключительной ответственностью пользователя.


Содержание / Table of Contents

  1. Обзор / Overview
  2. Влияние на цепочку поставок программного обеспечения / Software Supply Chain Impact
  3. Уязвимости / Vulnerabilities
  4. Цепочка атаки / Attack Chain
  5. Предварительные требования / Prerequisites
  6. Среда PoC с Docker / PoC Docker Environment
  7. Использование скриптов / Script Usage
    • gocd_rce_noauth.py — RCE без аутентификации / Unauthenticated RCE
    • gocd_urldns.py — URLDNS / Обнаружение десериализации
  8. Ссылки / References
  9. Хронология / Timeline
  10. Митигация / Mitigation

1. Обзор / Overview

[PT] Платформа GoCD разрабатывается и поддерживается компанией ThoughtWorks. В версиях младше 21.3.0 исследователи SonarSource выявили цепочку уязвимостей, эксплуатируемую без какой-либо аутентификации. Два скрипта в данном репозитории демонстрируют:

  • gocd_rce_noauth.py — полную эксплуатацию цепочки вплоть до RCE (удаленное выполнение кода) без использования учетных данных.
  • gocd_urldns.py — внеканальное (out-of-band) обнаружение десериализации Java через гаджет-цепочку URLDNS и DNS-обратный вызов (требуется действительная учетная запись для получения списка зарегистрированных агентов).

[EN] GoCD — это платформа CI/CD, поддерживаемая компанией ThoughtWorks. В версиях старше 21.3.0 исследователи SonarSource обнаружили цепочку уязвимостей, которую можно эксплуатировать без какой-либо аутентификации. Два скрипта в этом репозитории демонстрируют:

  • gocd_rce_noauth.py — полную эксплуатацию цепочки до RCE (удаленное выполнение кода) без учетных данных.
  • gocd_urldns.py — внеканальное обнаружение десериализации Java через гаджет-цепочку URLDNS и DNS-колбэк (требуются действительные учетные данные для просмотра зарегистрированных агентов).

2. Влияние на цепочку поставок программного обеспечения / Software Supply Chain Impact

[PT] GoCD занимает центральное место в цепочке доставки ПО организации: он оркеструет сборку, тестирование, генерацию артефактов и развертывание в продакшене. Компрометация сервера GoCD через RCE (как показано в gocd_rce_noauth.py) дает злоумышленнику контроль над всеми этапами этого процесса — позволяя внедрять бэкдоры в бинарные файлы, подделывать артефакты или эксфильтровать исходный код и учетные данные еще до того, как продукт достигнет конечного пользователя. Сценарий аналогичен атаке на SolarWinds (2020), где доступ к пайплайну сборки привел к распространению вредоносного ПО среди тысяч клиентов.

[EN] GoCD занимает центральное место в цепочке доставки ПО организации: он оркеструет сборку, тестирование, генерацию артефактов и развертывание в продакшене. Компрометация сервера GoCD через RCE (как продемонстрировано в gocd_rce_noauth.py) дает злоумышленнику контроль над каждым этапом этого процесса — позволяя внедрять бэкдоры в бинарные файлы, изменять артефакты или эксфильтровать исходный код и учетные данные до того, как любой продукт достигнет конечного пользователя. Сценарий зеркально отражает атаку на SolarWinds (2020), при которой доступ к конвейеру сборки привел к распространению вредоносного ПО среди тысяч клиентов.

flowchart TD
    ATK(["🕵️ Atacante / Attacker\n(não autenticado / unauthenticated)"])

    subgraph EXPLOIT ["Exploração / Exploitation"]
        E1["CVE-2021-43287\nLeitura do cruise_config\n(tokenGenerationKey + agentAutoRegisterKey)"]
        E2["Path Traversal\nLeitura de /etc/go/jetty.xml\ne /proc/self/environ"]
        E3["Registro de agente falso\nFake agent registration"]
        E4["Desserialização Java\n(AspectJWeaver gadget chains)\nSobrescreve jetty.xml + restart"]
        E5["💥 RCE no servidor GoCD\nRCE on GoCD server"]
        E1 --> E2 --> E3 --> E4 --> E5
    end

    subgraph PIPELINE ["Pipeline CI/CD comprometido / Compromised CI/CD Pipeline"]
        P1["📦 Build de artefatos\nBinary/artifact build"]
        P2["🧪 Execução de testes\nTest execution"]
        P3["📤 Publicação de pacotes\nPackage publication\n(npm, PyPI, Docker Hub...)"]
        P4["🚀 Deploy em produção\nProduction deployment"]
        P1 --> P2 --> P3 --> P4
    end

    subgraph IMPACT ["Impacto / Impact"]
        I1["🔑 Vazamento de credenciais\nCredential leak\n(tokens, SSH keys, API keys)"]
        I2["🦠 Backdoor em artefatos\nBackdoor in build artifacts"]
        I3["📂 Exfiltração de código-fonte\nSource code exfiltration"]
        I4["☠️ Ataque à cadeia de suprimentos\nSupply chain attack\n(usuários finais afetados / end users impacted)"]
        I1 & I2 & I3 --> I4
    end

    ATK --> EXPLOIT
    E5 -->|"Controle total do runner\nFull runner control"| PIPELINE
    P1 -->|"Artefatos envenenados\nPoisoned artifacts"| I2
    P3 -->|"Pacotes maliciosos\nMalicious packages"| I4
    P4 -->|"Produção comprometida\nCompromised production"| I4
    E5 -->|"Leitura de secrets\nSecrets read"| I1
    E5 -->|"Acesso ao repositório\nRepository access"| I3

3. Уязвимости / Vulnerabilities

CVEТип / TypeCVSS 3.1CWEAuth
CVE-2021-43287Раскрытие информации / Information Disclosure7.5 HIGHCWE-200❌ Нет / None
CVE-2021-43288Хранимая XSS / Stored XSS6.1 MEDIUMCWE-79Agent
CVE-2021-43289Обход пути — PUT / Path Traversal — PUT8.1 HIGHCWE-22Agent
CVE-2021-43290Обход пути — GET / Path Traversal — GET8.1 HIGHCWE-22Agent

CVE-2021-43287 — Business Continuity: утечка без аутентификации / unauthenticated leak

[PT] Конечная точка /go/add-on/business-continuity/api/cruise_config возвращает полный XML конфигурации сервера без требования аутентификации. XML содержит атрибуты элемента <server>, включая agentAutoRegisterKey и tokenGenerationKey — два ключа, необходимых для регистрации агентов и подписи аутентифицированных запросов. Кроме того, параметр pluginName конечной точки плагинов принимает последовательности обхода пути (../../../../../../), позволяя читать произвольные файлы системы — такие как /proc/self/environ и /etc/go/jetty.xml.

Скачать инструмент