TGViewer
Нарыл Нарыл @naryl_sec · 1.49K subscribers
Post #54 3.28K
Gitlab pre_build_script

Иногда есть необходимость дополнительно защитить Gitlab Runner. Например, если на нем имеются дополнетильные credentials, если он имеет особые сетевые доступы и т.д.

Способы защиты могут быть тоже разные:
- проверка того что тот кто запустил джобу входит в белый список
- проверка подписи коммитов
- проверка целостности джобы
- и т.д.

Для реализации такой защиты может применяться параметр раннера - pre_build_script. В этом параметре можно указать скрипт, который выполнится ДО запуска любого из блоков before_script/script/after_script из пайплайна (.gitlab-ci.yml).

Идея защиты такая - если проверка не пройдена, то pre_build_script возвращает код, отличный от 0 и фейлит джобу. А блоки before_script, script, after_script, которые контролирует недоверенный пользователь гитлаба не выполняются.

Не выполняются ведь? Да?

НЕТ!

before_script и script действительно не выполняются. А вот after_script выполняется все равно, вне зависимости от того что вернул pre_build_script
.

Такой вот простой байпас.
  • 🔥 7
  • 😢 3
  • 👍 1
More from @naryl_sec
  1. Sep 9, 2024Gitlab pre_build_script. Part 2 Так что же делать чтобы after_script не выполнялся после п…
  2. Aug 19, 2024OFFZONE_CYBERED_SPECIAL - промокод на скидку на воркшопы OFFZONE (не только мой)
  3. Aug 19, 2024🔧 Воркшоп «Ломаем CI/CD 2.0» На воркшопе вы изучите работу с секретами в CI/CD и научитес…
  4. Aug 19, 2024Второй год подряд буду проводить воркшоп на Offzone.
  5. May 24, 2024Запись моего выступления на PHDays: https://phdays.com/forum/broadcast/?talk=645&tag=offen…
  6. May 14, 2024Есть такая общеизвестная проблема когда делаешь non-root в k8s: контейнерам нужно биндить…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →