Введение
В этом уроке вы интерпретируете свои code security risk assessment результаты и узнаете, как:
- Понимание метрик риска на панели мониторинга
- Определите, какие репозитории и языки наиболее затронуты
- Приоритизировать уязвимости для устранения
Необходимые условия
Вам нужно сформировать code security risk assessment отчёт и дождаться завершения сканирования. См . раздел AUTOTITLE.
Шаг 1: Разберитесь с метриками панели управления
После завершения оценки ознакомьтесь с ключевыми показателями в верхней части панели управления:
-
**Общее количество отсканированных репозиториев**: количество репозиториев, успешно отсканированных из выбранных репозиториев. -
**Общее количество обнаруженных уязвимостей**: общее количество уязвимостей, обнаруженных во всех отсканированных хранилищах. -
**Copilot Autofix**: Количество уязвимостей, подходящих для Copilot Autofix. Включение GitHub Code Security даёт доступ к Copilot Autofix, который автоматически может предложить исправления этих оповещений.
Шаг 2: Проверьте уязвимости по языку
Посмотрите таблицу уязвимостей по языкам , чтобы понять, какие языки в вашей кодовой базе больше всего увеличивают общее количество уязвимостей.
Если уязвимости сосредоточены в определённом языке, это может указывать:
- Специфические фреймворки или шаблоны, которые вводят распространённые слабости
- Команды, работающие на этом языке, которые могут получить выгоду от целенаправленных рекомендаций по безопасному программированию
Шаг 3: Определите наиболее затронутые репозитории
В таблице отсканированных репозиториев вы можете увидеть каждое отсканированное хранилище вместе с соотношением уязвимостей, на которые можно Copilot Autofix рассчитывать, из общего числа найденных уязвимостей.
Метрика «Самый уязвимый репозиторий » в верхней части страницы выделяет репозиторий с наибольшим количеством уязвимостей. Это хорошее начало для распределения приоритетов на устранении.
Если высокий процент репозиториев содержит уязвимости, это может указывать:
- Широкие пробелы в защищённых практиках кодирования между командами
- Потребность в инструментах и ограничителях, доступных для всей организации, таких как code scanning
Если уязвимости содержат только несколько репозиториев, вы можете сосредоточить усилия по устранению на конкретных командах или кодовых базах.
Шаг 4: Обнаружены правила просмотра
Прокрутите таблицу «Обнаруженные правила », чтобы увидеть разбивку уязвимостей по правилам, включая:
-
**Правило**: Конкретный класс выявленных проблем с безопасностью -
**Степень тяжести правила**: уровень тяжести (критический, высокий, средний или низкий) -
**Отдельные репозитории**: сколько разных репозиториев содержат это нарушение правил -
**Обнаруженные уязвимости**: общее количество нарушений этого правила во всех репозиториях
Таблица сортируется по количеству уязвимостей по умолчанию, помогая выявлять наиболее распространённые проблемы. Особое внимание уделяйте правилам с критической или высокой степенью тяжести, которые встречаются в нескольких репозиториях, так как они представляют собой наибольший риск.
Шаг 5: Расставьте приоритеты в устранении
Теперь, когда вы понимаете метрики, определите приоритеты исправления в зависимости от риска.
Самые приоритетные уязвимости — это критические и серьёзные правила, которые встречаются в нескольких репозиториях, потому что они:
- Представляют наибольшее потенциальное воздействие при эксплуатации
- Присутствуют в коде, над которым ваши команды активно работают
Далее устраняйте уязвимости, которые представляют меньший риск или требуют дополнительных усилий для устранения:
-
**Проблемы средней и низкой степени тяжести**, которые всё равно могут представлять риск, но менее критичны в непосредственной степени -
**Правила, появляющиеся только в одном репозитории**, что означает более ограниченное воздействие
Также обращайте внимание на следующие показатели, которые могут потребовать более широкого вмешательства за пределы индивидуальных решений:
-
**Многие репозитории, подверженные одному и тому же правилу**: предполагает системный паттерн, который может требовать командного обучения или обновления стандартов кодирования -
**Высокий уровень уязвимостей в конкретном языке**: может указывать на проблемы на уровне фреймворка или отсутствие инструментов для сканирования этого языка
Дальнейшие действия
Чтобы начать устранять уязвимости с Copilot Autofix, подключитесь GitHub Code Security к вашей организации. У вас есть два варианта:
- Чтобы включить GitHub Code Security отдельный репозиторий, нажмите Включить рядом с репозиторием в таблице «Repositories scaned».
- Чтобы включить GitHub Code Security в вашей организации, нажмите «Включить Code Security » в верхней части страницы. Здесь вы можете выбрать, включать ли его для всех репозиториев или выбранных репозиториев, а затем проверить оценочную стоимость перед подтверждением.