МТИ — Теплоэнергетика

Безопасность CI/CD-пайплайнов в дипломе: от разбора атаки на GitHub Actions до собственной системы защиты

В марте 2026 года атака на GitHub Action от Checkmarx за четыре часа заразила 35 тегов и разошлась по десяткам open-source проектов. Инструмент, который проектировался для защиты инфраструктуры, сам стал точкой входа. Звучит как сюжет для триллера, но для выпускника ИТ-специальности это идеальный кейс: он одновременно свежий, воспроизводимый и попадает в десяток валидных тем ВКР. Если вы выбираете направление «Информационная безопасность», «DevOps» или «Программная инженерия» — supply chain атаки сегодня это тот же уровень обязательной темы, каким в 2015-м были SQL-инъекции. Ниже — рабочие сценарии, как превратить новость из ленты в защищаемую главу диплома, какие метрики считать и где чаще всего валятся студенты.

Частые вопросы перед началом

Подойдёт ли эта тема, если у меня нет доступа к реальному продакшн-пайплайну?

Полигон поднимается за вечер: локальный GitLab CI через Docker Compose или публичный репозиторий на GitHub с бесплатным раннером. Этого достаточно, чтобы воспроизвести сценарий подмены action и зафиксировать результаты SAST-сканирования. Для защиты важна методология, а не масштаб.

Какую статистику использовать в главе 1, если вуз требует «актуальные данные»?

Три источника: отчёт Sonatype State of the Software Supply Chain, база OSV.dev и отчёты OWASP по CI/CD Security Risks. Плюс — сама статья про Checkmarx как свежий кейс 2026 года. Комбинируйте глобальные цифры с локальным инцидентом, это даёт связку «тренд → конкретика».

Сколько схем должно быть в ВКР по ИБ и какие именно?

Минимум: контекстная диаграмма (C4 Level 1), диаграмма потоков данных (DFD) с границами доверия, модель угроз по STRIDE, схема предлагаемой архитектуры защиты. UML use-case — по желанию, но в ИБ-работах он часто выглядит притянутым за уши.

Как считать эффективность системы защиты, чтобы цифры не вызвали вопросов на защите?

Опирайтесь на измеримые метрики: покрытие зависимостей SBOM (%), среднее время обнаружения аномального тега (MTTD, минуты), доля actions, закреплённых по SHA (%). Формулы приводите прямо в главе 3 — комиссия любит, когда «до/после» проверяется арифметикой.

Три темы ВКР, которые сейчас смотрятся выигрышно

Как встроить кейс в главы ВКР: пошагово

Глава 1. Разбор инцидента как аналитический материал

Не пересказывайте новость — декомпозируйте её. Постройте DFD: внешний актор (атакующий) → процесс (CI-раннер) → хранилище (реестр артефактов). Отметьте границы доверия и покажите, что в исходном кейсе они размыты: action подписан владельцем тега, но потребитель не проверяет provenance. Затем наложите STRIDE-модель: подмена (Tampering), повышение привилегий (Elevation), отказ (DoS-обновление до заражённого тега). Это даст естественный переход к формулировке задач.

Глава 2. Проектирование защищённого конвейера

Здесь уместны диаграмма C4 Level 2 (контейнеры: runner, secrets store, registry, policy engine) и таблица мер. Покажите «до/после» в одной картинке — комиссия оценит. Минимальный набор контролей:

name: secure-build
on: [push, pull_request]
permissions:
  contents: read      # принцип наименьших привилегий
  id-token: write     # для OIDC к облаку

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      # 1. Пиннинг по SHA, не по тегу — тег можно перезаписать
      - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11  # v4.1.1
      # 2. Сканирование зависимостей до сборки
      - run: pip install pip-audit && pip-audit -r requirements.txt --strict
      # 3. Генерация SBOM и загрузка артефакта
      - uses: anchore/sbom-action@e11c54d47a4e2f6a5e8f1a4c7d3ef9b0d5e6c2a1
        with:
          format: spdx-json
      # 4. Подпись артефакта и публикация provenance
      - uses: sigstore/cosign-installer@11086d25041f77fe8fe7b9ea4e48e3b9192b8f19
      - run: cosign sign-blob --yes dist/app.tar.gz > dist/app.sig

Каждый блок — это подраздел главы 2. Не забудьте обосновать, почему выбран SBOM формата SPDX, а не CycloneDX, и почему Cosign, а не in-toto напрямую.

Глава 3. Метрики и эксперимент

Защита без чисел на защите ВКР не принимается. Сведите результаты в таблицу и приложите формулы. Пример метрик, которые считаются руками за один вечер:

МетрикаФормулаДоПосле
Доля actions с pinning по SHA, %N_sha / N_total × 10012100
MTTD подмены зависимости, минΣ(t_detect − t_inject) / K2403
Покрытие зависимостей SBOM, %N_in_sbom / N_used × 100094
Накладные расходы пайплайна, %(T_sec − T_base) / T_base × 100—18

Такую таблицу комиссия проверяет быстрее, чем 30 страниц текста. И да, MTTD в 240 минут взят не с потолка — это как раз «четыре часа» из инцидента Checkmarx.

Оформление схем и нормоконтроль

Схемы архитектуры — по ГОСТ 34.601-90 (стадии) или ГОСТ 19.701-90 (ЕСПД, если оформляете как программный документ). Диаграммы — C4 или UML 2.5, подписи обязательны на русском, легенда — в углу кадра. ISO/IEC 25010 пригодится, если обосновываете нефункциональные требования (security, reliability). OWASP CI/CD Top 10 — прямой источник для первой главы.

Чек-лист перед сдачей
  • Задачи в главах сформулированы одинаково, а выводы — один-в-один с задачами.
  • Все заимствованные схемы — со ссылками, собственные — с подписью «Составлено автором».
  • Код в приложении пронумерован и на него есть ссылки в тексте.
  • Метрики имеют формулу, единицы измерения и диапазон допустимых значений.
  • Список литературы: минимум 5 источников за последние 3 года, включая 1–2 стандарта (ГОСТ или ISO).
  • Уникальность ≥ 75 % по вузовской системе, заимствования из нормативки — квотированы.
  • Приложения отделены от основного текста и не входят в нумерацию страниц.
Типичные ошибки на темах по supply chain

1. «Пересказал новость — считаю главу готовой». Комиссия сразу видит компиляцию без анализа. Лечится добавлением своей модели угроз (STRIDE) и таблицы «угроза → контроль → метрика».
2. Метрики без базы сравнения. Фраза «стало безопаснее» без чисел = минус балл. Всегда фиксируйте baseline: 12 % actions с pinning — это ваш «до», измеримые 100 % — «после».
3. Копипаст workflow из туториала. В туториалах 2022–2023 годов сплошь `@v3` вместо SHA. Как раз тот случай, через который прошла атака Checkmarx — на защите это заметят мгновенно.

Если тема уже выбрана, но не хватает 100–120 часов на реализацию и оформление — обсудите с нашими специалистами план работы. Первая консультация бесплатная: поможем сузить тему, подобрать измеримые метрики и привести схемы к требованиям нормоконтроля. Работаем с любыми ИТ-направлениями, от ML до AppSec.

Материал подготовлен экспертами компании IT-Диплом. Мы помогаем студентам с 2010 года: от выбора темы и разработки прототипа до финального оформления по ГОСТ. Если вам нужна помощь в разработке темы или оформлении работы, наши специалисты готовы подсказать.

Последнее обновление: 2026-10-03

Источник: 35 заражённых тегов за четыре часа. Атака на GitHub Action от Checkmarx затронула десятки проектов по всему миру (опубликовано 2026-03-26)