TravisCI Security

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Що таке TravisCI

Travis CI - це хостований або локальний сервіс постійної інтеграції, який використовується для збирання та тестування програмних проектів, розміщених на кількох різних платформах git.

pageBasic TravisCI Information

Атаки

Тригери

Для запуску атаки спочатку потрібно знати, як тригерити збірку. За замовчуванням TravisCI буде тригерити збірку при пушах та запитах на злиття:

Cron-завдання

Якщо у вас є доступ до веб-додатка, ви можете налаштувати cron для запуску збірки, це може бути корисно для постійності або для тригеру збірки:

Здається, що неможливо налаштувати cron всередині файлу .travis.yml згідно з цим.

PR від сторонніх осіб

За замовчуванням TravisCI вимикає обмін змінними середовища з PR, що надходять від сторонніх осіб, але хтось може це увімкнути, і тоді ви зможете створювати PR для репозиторію та витягувати секрети:

Витягування секретів

Як пояснено на сторінці основної інформації, існує 2 типи секретів. Секрети змінних середовища (які перераховані на веб-сторінці) та власні зашифровані секрети, які зберігаються всередині файлу .travis.yml у форматі base64 (зауважте, що обидва, які зберігаються зашифрованими, в кінцевих машинах будуть відображені як змінні середовища).

  • Для переліку секретів, налаштованих як змінні середовища, перейдіть до налаштувань проекту та перевірте список. Однак зауважте, що всі змінні середовища проекту, встановлені тут, з'являться при тригеруванні збірки.

  • Для переліку власних зашифрованих секретів найкраще, що ви можете зробити, це перевірити файл .travis.yml.

  • Для переліку зашифрованих файлів ви можете перевірити файли .enc у репозиторії, рядки, схожі на openssl aes-256-cbc -K $encrypted_355e94ba1091_key -iv $encrypted_355e94ba1091_iv -in super_secret.txt.enc -out super_secret.txt -d у файлі конфігурації або зашифровані iv та ключі в змінних середовища такі як:

TODO:

  • Приклад збірки з оберненим шелом, який працює на Windows/Mac/Linux

  • Приклад витоку базового кодування env у журналах

TravisCI Enterprise

Якщо зловмисник потрапляє в середовище, яке використовує TravisCI Enterprise (докладніша інформація про це є в основній інформації), він зможе тригерити збірки на Робітнику. Це означає, що зловмисник зможе рухатися боково на цей сервер, з якого він може:

  • вибратися на хост?

  • скомпрометувати Kubernetes?

  • скомпрометувати інші машини, що працюють в одній мережі?

  • скомпрометувати нові облікові дані хмари?

Посилання

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Last updated