Skip to main content

Организация усилий по устранению утечок секретов

Систематически организуйте и управляйте устранением утечок секретов с помощью охранных кампаний и назначений оповещений.

Кто может использовать эту функцию?

Organization owners, security managers, and users with the admin role

Введение

В этом уроке вы организуете работу по устранению утечок секретов. Вы узнаете, как:

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

Предпосылки

  • У вас должны быть оба GitHub Secret Protection варианта и secret scanning включены для вашей организации. См . раздел AUTOTITLE.
  • У вас должны быть уже secret scanning доступные оповещения.

Шаг 1: Пересмотрите свой Оповещения о сканировании секретов

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

  1. На GitHubперейдите на главную страницу организации.

  2. Под названием вашей организации нажмите вкладку Security and quality .

  3. В левой боковой панели, в разделе «Оповещения», нажмите на символ справа от Secret scanning.

  4. В выпадающем списке выберите Default. Default относится к поддерживаемым шаблонам и заданным пользовательским шаблонам.

  5. В качестве альтернативы вы можете выбрать Generic просмотр неструктурированных секретов, таких как пароли. Однако общие шаблоны обычно дают больше ложных срабатываний, чем стандартные, поэтому рассмотрите эти оповещения после устранения приоритетных утечек.

  6. Проверьте общее количество открытых уведомлений и затронутых репозиториев.

  7. Используйте фильтры, чтобы определить самые срочные оповещения и расставить приоритеты в своих усилиях по устранению проблем.

    • Чтобы показать утечки в публичных репозиториях, используйте publicly-leaked.
    • Чтобы показать секретные утечки, обнаруженные в более чем одном хранилище в одной организации или предприятии, используйте is:multi-repository.
    • Чтобы показать секреты, которые всё ещё актуальны, используйте validity:active.
    • Для фильтрации по конкретным сервисным учетным данным (AWS, Azure и GitHubт.д.) используйте provider:.
    • Для фильтрации по определённым типам токенов используйте secret-type:.
  8. По желанию, в боковой панели под разделом «Метрики» нажмите Secret scanning на просмотр:

    • Секретные типы, которые чаще всего блокировались или обходили
    • Репозитории с наибольшим числом заблокированных пушей или обходов

Шаг 2: Создайте кампанию по безопасности

Вы можете настроить кампанию по безопасности, чтобы организовать и отслеживать вашу работу по устранению в разных репозиториях.

  1. Перейдите к вашей организации и нажмите Security and quality.
  2. На левой панели выберите Кампании.
  3.        **Нажмите «Создать кампанию<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-triangle-down" aria-label="triangle down icon" role="img"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427Z"></path></svg>**», затем либо:
    
    • Выберите заранее определённый шаблон кампании Secrets.
    • Используйте пользовательские фильтры для таргетирования конкретных оповещений (например is:open provider:azure , или is:open validity:active).
  4. Просмотрите оповещения (максимум 1000) и при необходимости отрегулируйте фильтры.
  5.        **Нажмите «Сохранить как**» и **выберите «Опубликовать кампанию**».
    
  6. Заполните информацию о кампании, затем нажмите «Опубликовать кампанию».

Шаг 3: Назначьте оповещения членам команды

После создания кампании вы захотите назначить отдельные оповещения разработчикам, ответственным за их исправление.

  1. На странице вашей кампании нажмите на расширение репозитория и просмотр его оповещений.
  2. Нажмите на уведомление, чтобы открыть страницу с деталями.
  3. В правой боковой панели нажмите Assignees.
  4. Выберите разработчика, которого хотите исправить оповещение. Обычно это тот, кто внёс секрет, или администратор репозитория, в котором обнаружена утечка. У них должен быть доступ к записи.

Шаг 4: Отслеживайте ход рекультивации

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

  1. На вашей странице кампании ознакомьтесь с резюме кампании. Вот что вы увидите: * Прогресс кампании: сколько оповещений закрыто (исправлено или отклонено) или осталось для проверки * Статус: Сколько дней до окончания кампании
  2. Вы можете ознакомиться с деталями кампании:
    • Расширяйте любой репозиторий, чтобы видеть прогресс в устранении оповещений.
    • Установите Group by на None для показывания списка всех уведомлений.
    • Используйте фильтры, чтобы сосредоточиться на конкретных репозиториях или оповещениях.
  3. Определите области, требующие внимания, исходя из репозиториев с наибольшим количеством открытых оповещений или отсутствием недавнего прогресса, затем обратитесь за поддержкой этих поддерживающих или назначенных репозиториев.

Шаг 5: Общайтесь с заинтересованными сторонами

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

  1. Перейдите к панели кампании.
  2. Определите информацию, которую хотите включить в свои отчёты. Рассмотрим следующие ключевые показатели:
    • Оповещения устранены на этой неделе
    • Оставшиеся открытые тревоги
    • Товары на треке против предметов с риском
    • Значимые достижения или блокирующие
  3. Включите метрики в обновление, а затем распространяйте их по электронной почте, Slack, Teams или по вопросам безопасности.

Шаг 6: Процедуры очистки документов

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

  1. Разрабатывайте индивидуальные руководства по секретным типам. Рассмотрим пример. * Учетные данные AWS: Как вращать ключи доступа и обновлять сервисы * ** GitHub токены**: как отменить и восстановить Personal Access Tokens * Ключи API: Процедуры ротации, специфичные для сервиса * Учетные данные базы данных: безопасная ротация без перебоев в обслуживании
  2. Создайте чек-лист для устранения процедур.
    1. Проверьте, что секрет действительно просочился.
    2. Определите, активен ли секрет.
    3. Отменить или изменить скомпрометированный секрет.
    4. Обновить все системы с помощью старого секрета.
    5. Проверьте, работают ли системы с новыми учетными данными.
    6. Задокументируйте инцидент и шаги по устранению.
    7. Отметьте предупреждение как разрешённое.
  3. Устанавливайте пути эскалации.
    • Определите, когда нужно перейти к руководству в сфере безопасности.
    • Определите экспертов по различным типам секретов.
    • Создайте процедуры реагирования на критические утечки.