Перейти к основному содержимому

Актуальные практики — чек-лист

Используйте вопросы ниже для самопроверки после прохождения статей 1–11. Сначала попробуйте ответить без подсказок, затем сверьтесь с краткими ответами в конце и с полными статьями.

Разделите вопросы на три блока: базовые (1–4), инфраструктурные (5–8), процессные (9–12).


Блок 1 — Цепочка поставок и аутентификация​

1. Что такое SBOM (Software Bill of Materials) и для чего он нужен команде?​

Подсказка: статья Supply chain и SBOM.

Краткий ответ

SBOM — машиночитаемый список всех программных компонентов в артефакте (библиотеки, пакеты, версии, лицензии). Нужен для быстрого ответа на вопрос "есть ли уязвимый Log4j в нашем prod?", для compliance-аудитов и прозрачности supply chain. Форматы: SPDX, CycloneDX. Генерируется инструментами syft, trivy, cyclonedx-cli.

2. Назовите три звена software supply chain (цепочки поставок ПО).​

Подсказка: статья Supply chain и SBOM.

Краткий ответ

Три звена:

  • Зависимости — npm, PyPI, Maven пакеты, которые вы подключаете
  • CI/CD pipeline — GitHub Actions, GitLab CI, runners, secrets
  • Build и deploy — Dockerfile, base images, Helm charts, инфраструктура

Атака на любое звено даёт доступ к production.

3. Чем GitOps (pull-деплой) отличается от push-deploy из CI?​

Подсказка: статья GitOps.

Краткий ответ

При push-deploy CI-сервер напрямую применяет изменения в кластер (kubectl apply, helm upgrade). При GitOps желаемое состояние описано в Git, а контроллер (Argo CD, Flux) сам читает Git и приводит кластер к этому состоянию. Откат = git revert. Преимущества: audit trail, единый source of truth, нет прямого доступа CI к prod.

4. Что такое PKCE (Proof Key for Code Exchange) в OAuth?​

Подсказка: статья OIDC и OAuth.

Краткий ответ

PKCE — механизм защиты public client (SPA, mobile) от перехвата authorization code. Клиент генерирует случайный code_verifier, отправляет его хеш (code_challenge) в /authorize, а при обмене code на токены передаёт оригинальный code_verifier. IdP проверяет совпадение. Без verifier перехваченный code бесполезен.


Блок 2 — Инфраструктура и облака​

5. Какую роль выполняет API Gateway, если на сервере уже стоит nginx?​

Подсказка: статья API Gateway.

Краткий ответ

Nginx может быть API Gateway, если настроен с L7-политиками: маршрутизация по path на разные сервисы, JWT validation, rate limit per consumer, request transformation. Простой reverse proxy с одним upstream — только проксирование. Gateway дополнительно понимает структуру API и применяет политики.

6. Что такое golden path в Platform Engineering?​

Подсказка: статья Platform Engineering.

Краткий ответ

Golden path — готовый шаблонный маршрут для типовой задачи разработчика. Пример: "создать новый микросервис" → автоматически получает CI pipeline, K8s deployment, monitoring dashboard, logging, documentation template. Снижает cognitive load и обеспечивает единые стандарты безопасности.

7. Назовите два российских облачных провайдера и один типичный сервис (ВМ, S3-analog, managed DB).​

Подсказка: статья Облака РФ.

Краткий ответ

Примеры:

  • Yandex Cloud — Compute Cloud (ВМ), Object Storage (S3-analog), Managed PostgreSQL
  • VK Cloud — Cloud Servers, Cloud Storage, Cloud Databases
  • Selectel — облачные серверы, S3-хранилище
  • Cloud.ru — виртуальные машины, object storage

Сервисы аналогичны AWS, но с учётом 152-ФЗ и data residency.

8. Почему LLM-агенту нельзя давать prod kubeconfig без ограничений?​

Подсказка: статья Безопасность ИИ.

Краткий ответ

LLM может: случайно вывести секреты из kubeconfig в ответ, выполнить destructive команды (kubectl delete namespace), быть уязвим к prompt injection. Нужен least privilege: read-only доступ, sandbox cluster, human-in-the-loop для изменений, запрет секретов в промптах.


Блок 3 — Процессы и люди​

9. Что проверяет gitleaks в CI?​

Подсказка: статья DevSecOps.

Краткий ответ

gitleaks сканирует git diff и историю на наличие секретов: API keys, passwords, tokens, private keys, connection strings. При находке в PR — block merge. Это первый и самый дешёвый security gate в CI.

10. Какие метрики учебного фишинга важнее click rate?​

Подсказка: статья Учебный фишинг.

Краткий ответ

Важнее click rate:

  • Report rate — сколько сотрудников отправили подозрительное письмо в security@ (желаемый рост)
  • Time to report — как быстро репортят (зрелость SOC culture)

Высокий report rate и низкий time to report показывают, что команда активно участвует в защите — отправляет подозрительные письма в security@.

11. Чем ID Token отличается от Access Token в OIDC?​

Подсказка: статья OIDC и OAuth.

Краткий ответ
  • ID Token (JWT) — для клиента (браузер, приложение). Содержит identity: sub, email, name. Подтверждает "кто вошёл".
  • Access Token — для API (resource server). Даёт право вызывать защищённые endpoint. Может быть JWT или opaque.

ID Token не подставляют на backend API. Access Token не используют для отображения профиля в UI.

12. Что такое STRIDE в Secure SDLC?​

Подсказка: статья Secure SDLC, 8.07/1132.

Краткий ответ

STRIDE — модель угроз от Microsoft для threat modeling:

  • Spoofing — подмена identity
  • Tampering — изменение данных
  • Repudiation — отказ от действия
  • Information Disclosure — утечка
  • Denial of Service — отказ в обслуживании
  • Elevation of Privilege — повышение привилегий

Применяется к каждому элементу DFD-диаграммы на этапе design.


Таблица соответствия вопросов и статей​

№ вопросаТемаСтатья
1–2Supply chain, SBOM1.md
3GitOps4.md
4, 11OIDC, OAuth, токены8.md
5API Gateway9.md
6Platform Engineering6.md
7Облака РФ5.md
8Безопасность ИИ7.md
9DevSecOps, CI gates3.md
10Учебный фишинг11.md
12Secure SDLC, threat model10.md

Дополнительные вопросы для углубления​

Если базовые 12 вопросов даются легко, попробуйте ответить на эти:

№ВопросСтатья
13Что такое BFF и зачем он нужен для SPA?8.md
14Какой OAuth flow устарел и почему?8.md
15Чем API Gateway отличается от Load Balancer?9.md
16Что такое OWASP ASVS L1?10.md
17Что такое safe harbor в учебном фишинге?11.md
18Зачем pin GitHub Actions по SHA?1.md

Как использовать чек-лист​

ШагДействие
1Пройдите все статьи 1–11
2Ответьте на 12 вопросов письменно
3Сверьтесь с краткими ответами выше
4Вопросы с ошибками — перечитайте статью
5Закрепите на практикуме 8.13 или 8.14
6Вернитесь к итогам для общей картины

13. Что такое BFF и зачем он нужен для SPA?​

Краткий ответ

BFF (Backend-for-Frontend) — тонкий backend между SPA и IdP/API. Обменивает OAuth code на токены server-side, хранит refresh token в server session, отдаёт SPA HttpOnly cookie. SPA не видит долгоживущих секретов. Снижает риск XSS-кражи токенов.

14. Какой OAuth flow устарел и почему?​

Краткий ответ

Implicit flow (response_type=token) и Resource Owner Password Credentials устарели. Implicit выдавал access token в URL fragment (утечка через history, Referer). Password grant требовал передачи пароля приложению. Для нового кода — только Authorization Code + PKCE.

15. Чем API Gateway отличается от Load Balancer?​

Краткий ответ

Load Balancer распределяет трафик между копиями одного сервиса (L4/L7). API Gateway маршрутизирует на разные сервисы по HTTP path, применяет JWT validation, rate limit, WAF, protocol bridge. Gateway — осмысленный L7 с политиками API.

16. Что такое OWASP ASVS L1?​

Краткий ответ

ASVS L1 — базовый уровень Application Security Verification Standard. Минимальные требования для большинства приложений: валидация input, auth, access control, secure config, logging. Начните с L1, затем L2 для B2B SaaS с PII.

17. Что такое safe harbor в учебном фишинге?​

Краткий ответ

Safe harbor — письменное обещание, что клик по учебной фишинговой ссылке не влечёт дисциплинарных мер. Снимает страх и повышает честность метрик. Объявляется до кампании в security policy и повторяется на debrief.

18. Зачем pin GitHub Actions по SHA?​

Краткий ответ

uses: actions/checkout@v4 может измениться на сервере GitHub (supply chain attack). Pin по commit SHA (uses: actions/checkout@b4ffde65...) фиксирует точный код action. Обновление SHA — осознанный PR с review.


Глоссарий ключевых терминов​

ТерминКраткое определение
SBOMСписок компонентов в артефакте
PKCEЗащита OAuth code для public client
BFFBackend-for-Frontend для безопасных токенов
GitOpsProd = Git, контроллер синхронизирует
Golden pathШаблонный маршрут в Platform Eng
ASVSСтандарт верификации безопасности OWASP
STRIDEМодель угроз для threat modeling
DASTДинамическое сканирование приложения
WAFWeb Application Firewall
Safe harborЗащита от санкций при учебном фишинге

Оценка результата​

РезультатУровеньРекомендация
10–12 верныхУверенное пониманиеПрактикумы, внедрение в проект
7–9 верныхБазовое пониманиеПеречитать пробелы
4–6 верныхНачальный уровеньПройти статьи заново с заметками
0–3 верныхТребуется изучениеНачать с 1.md и 3.md

Ответы в полном объёме: статьи 1–11 · итоги · оглавление 8.12


Содержание