Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Безопасность в Yandex Cloud
  • Ключевые принципы безопасности
  • Разделение ответственности за обеспечение безопасности
  • Соответствие требованиям
  • Меры безопасности на стороне Yandex Cloud
  • Средства защиты, доступные пользователям облачных сервисов
    • Все разделы на одной странице
    • Введение
    • Аутентификация и управление доступом
    • Сетевая безопасность
    • Безопасная конфигурация виртуальной среды
    • Шифрование данных и управление ключами
    • Сбор, мониторинг и анализ аудитных логов
    • Защита приложений
    • Безопасность Kubernetes
    • Версии
  • Политика поддержки пользователей при проведении проверки уязвимостей
  • Бюллетени безопасности
  • Диапазоны публичных IP-адресов

В этой статье:

  • 6. Защита приложений
  • Защита от роботной активности
  • Построение безопасного пайплайна
  1. Стандарт по защите облачной инфраструктуры 1.4.0
  2. Защита приложений

Требования к защите приложений

Статья создана
Yandex Cloud
Улучшена
Danila N.
Обновлена 8 апреля 2025 г.
  • 6. Защита приложений
    • Защита от роботной активности
    • Построение безопасного пайплайна

6. Защита приложений6. Защита приложений

Защита от роботной активностиЗащита от роботной активности

6.1 Используется Yandex SmartCaptcha6.1 Используется Yandex SmartCaptcha

Для снижения рисков, связанных с автоматизированными атаками на приложения, рекомендуем использовать сервис Yandex SmartCaptcha. Сервис проверяет запросы пользователей своими ML-алгоритмами и показывает задание только тем пользователям, запросы которых посчитал подозрительными. При этом на странице необязательно размещать кнопку Я не робот.

Проверка в консоли управления
  1. В консоли управления выберите каталог.
  2. Выберите сервис Yandex SmartCaptcha.
  3. Убедитесь, что создана хотя бы одна капча для вашего приложения.

Инструкции и решения по выполнению:

Инструкция по созданию капчи в Yandex SmartCaptcha.

Построение безопасного пайплайнаПостроение безопасного пайплайна

Yandex Cloud позволяет клиентам выстроить соответствие разрабатываемого ПО по всем уровням Supply-chain Levels for Software Artifacts (SLSA), при соблюдении инструкций в данном разделе. При использовании Yandex Managed Service for GitLab, клиент автоматически достигает соответствия до 2 уровня SLSA включительно.

6.2 При создании реестра в Yandex Container Registry по умолчанию оставляйте безопасные настройки реестра6.2 При создании реестра в Yandex Container Registry по умолчанию оставляйте безопасные настройки реестра

При создании нового реестра набор опций по умолчанию помогает соответствовать стандарту безопасности Yandex Cloud:

  • автоматически выполняется сканирование Docker-образов при их загрузке в реестр;
  • регулярно выполняется повторное сканирование Docker-образов в реестре: каждые 7 дней с возможностью выбрать в настройках ежедневное сканирование.

Инструкции и решения по выполнению:

Консоль управления
CLI
  1. В консоли управления выберите каталог, в котором будет создан реестр.

  2. В списке сервисов выберите Container Registry.

  3. Нажмите кнопку Создать реестр.

  4. В поле Имя введите имя реестра. Требования к имени:

    • длина — от 2 до 63 символов;
    • может содержать строчные буквы латинского алфавита, цифры и дефисы;
    • первый символ — буква, последний — не дефис.
  5. В блоке Автоматическое сканирование:

    • Оставьте включенной опцию Сканировать Docker-образы при загрузке, чтобы сканировать Docker-образы при загрузке в репозиторий.
    • Оставьте включенной опцию Сканировать все Docker-образы в реестре, при необходимости настройте периодичность сканирования.
  6. Нажмите кнопку Создать реестр.

Выполните команду, чтобы создать реестр с безопасными настройками сканирования образов по умолчанию:

yc container registry create \
  --name <имя_реестра> \
  --secure

6.3 Docker-образы сканируются при загрузке в Container Registry6.3 Docker-образы сканируются при загрузке в Container Registry

Автоматическое сканирование Docker-образов при загрузке имеет решающее значение для раннего обнаружения и устранения уязвимостей, обеспечивая безопасное развертывание контейнеров. После завершения сканирования отчеты содержат краткое описание обнаруженных уязвимостей и проблем, помогая определять приоритеты и устранять риски безопасности в контейнерных приложениях.

Проверка в консоли управления
  1. В консоли управления выберите каталог, которому принадлежит реестр с Docker-образами.
  2. Выберите реестр в сервисе Container Registry.
  3. Перейдите на вкладку Сканер уязвимостей и нажмите кнопку Изменить настройки.
  4. Убедитесь, что сканирование Docker-образов при загрузке включено.

Инструкции и решения по выполнению:

Инструкция по сканированию Docker-образа при загрузке.

6.4 Выполняется периодическое сканирование Docker-образов, хранящихся в Container Registry6.4 Выполняется периодическое сканирование Docker-образов, хранящихся в Container Registry

Сканирование Docker-образов по расписанию представляет собой автоматизированный процесс проверки контейнерных образов на наличие уязвимостей и соответствие стандартам безопасности. Такое сканирование выполняется регулярно и автоматически, что обеспечивает консистентность проверки образов на наличие уязвимостей. Это позволяет поддерживать высокий уровень безопасности в долгосрочной перспективе. После завершения сканирования отчеты содержат краткое описание обнаруженных уязвимостей и проблем, помогая определять приоритеты и устранять риски безопасности в контейнерных приложениях.

Рекомендуем настроить расписание сканирования не реже, чем раз в неделю.

Проверка в консоли управления
  1. В консоли управления выберите каталог, которому принадлежит реестр с Docker-образами.
  2. Выберите реестр в сервисе Container Registry.
  3. Перейдите на вкладку Сканер уязвимостей и нажмите кнопку Изменить настройки.
  4. Убедитесь, что сканирование Docker-образов по расписанию включено и оно проходит не реже, чем раз в неделю.

Инструкции и решения по выполнению:

Инструкция по сканированию Docker-образа по расписанию.

6.5 Контейнерные образы, используемые в продакшн-среде, имеют последнюю дату сканирования не позднее недели6.5 Контейнерные образы, используемые в продакшн-среде, имеют последнюю дату сканирования не позднее недели

Проверка Docker-образов, используемых в рабочей среде, с датой последнего сканирования не позднее недели гарантирует, что вы постоянно отслеживаете и обновляете меры безопасности, устраняя потенциальные уязвимости, которые могли возникнуть с момента последнего сканирования, а также помогает убедиться, что вы не разворачиваете контейнеры с недавно обнаруженными уязвимостями, тем самым повышая уровень защищенности. Автоматизировать этот процесс можно с помощью настройки расписания в Сканере уязвимостей.

Проверка через CLI

Выполните команду для поиска контейнерных образов, которые имеют последнюю дату сканирования не позднее недели:

export ORG_ID=<ID_организации>
for CLOUD_ID in $(yc resource-manager cloud list --organization-id=${ORG_ID} --format=json | jq -r '.[].id');
do for FOLDER_ID in $(yc resource-manager folder list --cloud-id=$CLOUD_ID --format=json | jq -r '.[].id'); 
do for REGISTRY_ID in $(yc container registry list --folder-id $FOLDER_ID --format=json | jq -r '.[].id');
do for IMAGE_ID in $(yc container image list --registry-id $REGISTRY_ID --format=json | jq -r '.[].id';)
do LAST_SCAN_DATE=$(yc container image get-last-scan-result --image-id $IMAGE_ID --format=json 2>/dev/null | jq -r '.scanned_at');
[ ! -z "$LAST_SCAN_DATE" ] && [ $(date --date "$LAST_SCAN_DATE" +'%s') -lt $(date --date '7 days ago' +'%s') ] && echo "Regitry ID - $REGISTRY_ID, Image ID - $IMAGE_ID, Last scan date - $LAST_SCAN_DATE"
done;
done;
done;
done

6.6 При сборке артефактов применяются аттестации6.6 При сборке артефактов применяются аттестации

Аттестации применяются при сборке артефактов, чтобы обеспечить безопасную и поддающуюся проверке запись о происхождении артефакта, его целостности и соответствии политикам безопасности SBOM. Это помогает обеспечить надежность артефакта на протяжении всего жизненного цикла. SBOM необходим для обеспечения безопасности цепочки поставок, управления уязвимостями, соответствия требованиям, оценки рисков, прозрачности и эффективного реагирования на инциденты.

При использовании Managed Service for GitLab процесс применения аттестаций становится проще, потому что сервис имеет функцию генерации provenance attestation. SBOM может быть сгенерирован с использованием стороннего ПО syft.

Ручная проверка

Убедитесь, что выполняется аттестация артефактов при сборке приложения.

Инструкции и решения по выполнению:

Инструкция от Gitlab по аттестации артефактов.

6.7 Обеспечивается целостность артефактов6.7 Обеспечивается целостность артефактов

Подписание артефактов повышает безопасность, обеспечивая подлинность, целостность, доверие и соответствие требованиям в вашем программном обеспечении.

Ручная проверка

Убедитесь, что выполняется подписание артефактов при сборке приложения.

Инструкции и решения по выполнению:

Артефакты в рамках пайплайна можно подписывать с помощью стороннего ПО Cosign для подписи артефактов, образов и in-to-to аттестаций, чтобы в дальнейшем загрузить их в Yandex Container Registry.

С помощью специальной сборки утилиты Cosign сохраняйте созданную ключевую пару электронной подписи в сервисе Yandex Key Management Service, подписывайте файлы и артефакты закрытым ключом этой ключевой пары и проверяйте электронную подпись с помощью ее открытого ключа.

Подробнее см. в разделе Подпись и проверка Docker-образов Container Registry в Yandex Managed Service for Kubernetes.

6.8 Выполняется проверка подлинности артефактов при развертывании6.8 Выполняется проверка подлинности артефактов при развертывании

Чтобы обеспечить надежность, безопасность и совместимость приложений в Managed Service for Kubernetes, сервисе для автоматического масштабирования и развертывания приложений, необходимо свести к минимуму риск возникновения проблем, уязвимостей и сбоев во время развертывания и выполнения. Для этого используется подпись и проверка подписи в Managed Service for Kubernetes с помощью Cosign и Kyverno.

Ручная проверка

Убедитесь, что выполняется проверка подлинности артефактов при сборке приложения.

Инструкции и решения по выполнению:

Инструкция по настройке подписи артефактов.

6.9 Применяются защищенные шаблоны безопасного пайплайна6.9 Применяются защищенные шаблоны безопасного пайплайна

При работе с Managed Service for GitLab убедитесь, что вы применяете встроенные механизмы безопасности GitLab для защиты вашего пайплайна. Доступны следующие варианты использования пайплайна в ваших проектах:

  • Создание пайплайна в отдельном проекте и подключение его к другим проектам с помощью функции include. Доступно для всех типов лицензий.
  • Использование механизма Compliance framework and pipeline, который будет выполняться в любом проекте группы. Механизм доступен для типа лицензии Ultimate.
  • Копирование секции пайплайна в файлы .gitlab-ci.yml ваших проектов.

6.10 Используется профиль безопасности Yandex Smart Web Security6.10 Используется профиль безопасности Yandex Smart Web Security

Yandex Smart Web Security — сервис для защиты от DDoS, web-атак и ботов на прикладном уровне L7 сетевой модели OSI. Smart Web Security подключается к Yandex Application Load Balancer.

Функциональность сервиса сводится к проверке HTTP-запросов к защищаемому ресурсу на соответствие правилам, заданным в профиле безопасности. В зависимости от результатов проверки запросы пропускаются на защищаемый ресурс, блокируются или отправляются в сервис Yandex SmartCaptcha для дополнительной верификации.

Проверка в консоли управления
Проверка через CLI
  1. В консоли управления выберите каталог, в котором вы хотите проверить статус Smart Web Security.
  2. В списке сервисов выберите Smart Web Security.
  3. Убедитесь, что у вас есть созданные профили безопасности.
  4. Если профили безопасности есть, рекомендация выполняется. В противном случае перейдите к п. «Инструкции и решения по выполнению».

Выполните команду:

yc smartwebsecurity security-profile list

Если команда вернет информацию об имеющихся профилях безопасности, рекомендация выполняется. В противном случае перейдите к п. «Инструкции и решения по выполнению».

Инструкции и решения по выполнению:

Создание профиля безопасности и подключение его к виртуальному хосту L7-балансировщика.

6.11 Используется Web Application Firewall6.11 Используется Web Application Firewall

Для снижения рисков, связанных с веб-атаками, рекомендуем использовать Yandex Smart Web Security Web Application Firewall (WAF). Web Application Firewall анализирует входящие HTTP-запросы к веб-приложению по предварительно настроенным правилам. На основе результатов анализа к HTTP-запросам применяются определенные действия.

Вы можете управлять межсетевым экраном веб-приложений с помощью профиля WAF, который подключается к профилю безопасности Smart Web Security в виде отдельного правила.

Проверка в консоли управления
  1. В консоли управления выберите каталог, в котором необходимо проверить наличие правила WAF в профиле безопасности.
  2. В списке сервисов выберите Smart Web Security.
  3. Убедитесь, что у вас в профиле безопасности есть правило безопасности с типом Web Application Firewall.

Инструкции и решения по выполнению:

Создание профиля WAF и подключение его к профилю безопасности Smart Web Security.

6.12 Используется Advanced Rate Limiter6.12 Используется Advanced Rate Limiter

Advanced Rate Limiter (ARL) — модуль Yandex Smart Web Security для контроля и ограничения нагрузки на веб-приложения. Модуль позволяет установить лимит на количество HTTP-запросов за определенный промежуток времени. Все запросы сверх лимита будут блокироваться. Можно установить как единый лимит на весь трафик, так и настраивать отдельные лимиты для сегментирования запросов по определенным параметрам. Запросы для лимитов можно считать по одному или объединять в группы по заданному признаку.

Профиль ARL необходимо подключить к профилю безопасности Smart Web Security.

Проверка в консоли управления
  1. В консоли управления выберите каталог, в котором необходимо проверить наличие профилей ARL.
  2. В списке сервисов выберите Smart Web Security.
  3. На панели слева выберите Профили ARL и убедитесь, что у вас есть профили ARL, подключенные к профилю безопасности.

Инструкции и решения по выполнению:

Создание профиля ARL и подключение его к профилю безопасности Smart Web Security.

6.13 Настроены правила ревью кода6.13 Настроены правила ревью кода

Yandex Managed Service for GitLab позволяет гибко настраивать обязательные правила ревью кода, прежде чем этот код может быть добавлен в целевую ветку проекта. Функциональность является альтернативой встроенному в GitLab Enterprise Edition инструменту Approval Rules и доступна вне зависимости от версии GitLab.

Если в инстансе GitLab включены правила ревью кода, Managed Service for GitLab анализирует подтверждения от ревьюеров на соответствие заданным правилам. Если подтверждений недостаточно, в мерж-реквесте создается техническая дискуссия, блокирующая его интеграцию в целевую ветку. При изменении мерж-реквеста в дискуссии создается или обновляется комментарий с текущим статусом соответствия правилам. Когда все необходимые подтверждения получены, дискуссия закрывается.

Если закрыть техническую дискуссию вручную, она будет создана заново. В случае интеграции мерж-реквеста в обход заданных правил пользователи с ролью Maintainer и выше получат уведомление на электронную почту о нарушении установленного процесса ревью кода.

Проверка в консоли управления
  1. В консоли управления выберите каталог, в котором расположен инстанс GitLab.
  2. В списке сервисов выберите Managed Service for GitLab.
  3. Выберите нужный инстанс и в правом верхнем углу страницы нажмите Редактировать.
  4. Убедитесь, что в поле Правила ревью кода выбрана настроенная конфигурация правил ревью кода.

Инструкции и решения по выполнению:

Активация правил ревью кода в инстансе GitLab.

6.14 Доверенные и нежелательные IP-адреса группируются в списки6.14 Доверенные и нежелательные IP-адреса группируются в списки

В Yandex Smart Web Security есть возможность сформировать собственные наборы IP-адресов — пользовательские списки. Списки можно добавлять в качестве условий в правила, чтобы пропустить, заблокировать или направить в SmartCaptcha часть трафика на этапе проверки IP-адреса.

Проверка в консоли управления
Ручная проверка
  1. Откройте консоль Yandex Cloud в вашем браузере.
  2. Перейдите в нужный каталог.
  3. В списке сервисов выберите Smart Web Security.
  4. Перейдите в раздел Списки.
  5. Убедитесь, что у вас есть созданные списки.
  6. Если списки есть, рекомендация выполняется. Если нет, перейдите к пункту «Инструкции и решения по выполнению».

Чтобы убедиться, что у вас есть списки в Smart Web Security, обратитесь к вашему персональному менеджеру.

Инструкции и решения по выполнению:

Используйте черные и белые списки IP-адресов для фильтрации трафика. Подробнее см. в разделе Управление списками адресов.

Была ли статья полезна?

Предыдущая
Сбор, мониторинг и анализ аудитных логов
Следующая
Безопасность Kubernetes
Проект Яндекса
© 2025 ООО «Яндекс.Облако»