Introduction
В этом уроке вы интерпретируете свои 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: Расставьте приоритеты в устранении
Теперь, когда вы понимаете метрики, определите приоритеты исправления в зависимости от риска.
Самые приоритетные уязвимости — это критические и серьёзные правила, которые встречаются в нескольких репозиториях, потому что они:
- Представляют наибольшее потенциальное воздействие при эксплуатации
- Присутствуют в коде, над которым ваши команды активно работают
Далее устраняйте уязвимости, которые представляют меньший риск или требуют дополнительных усилий для устранения:
- Проблемы средней и низкой степени тяжести, которые всё равно могут представлять риск, но менее критичны в непосредственной степени
- Правила, появляющиеся только в одном репозитории, что означает более ограниченное воздействие
Также обращайте внимание на следующие показатели, которые могут потребовать более широкого вмешательства за пределы индивидуальных решений:
- Многие репозитории, подверженные одному и тому же правилу: предполагает системный паттерн, который может требовать командного обучения или обновления стандартов кодирования
- Высокий уровень уязвимостей в конкретном языке: может указывать на проблемы на уровне фреймворка или отсутствие инструментов для сканирования этого языка
Устранение уязвимостей или утечек, выявленных оценкой рисков, упрощается GitHub Advanced Security. Допустимые владельцы предприятий могут начать пробную версию для своего предприятия на странице результатов.
Чтобы начать устранять уязвимости с Copilot Autofix, подключитесь GitHub Code Security к вашей организации. У вас есть два варианта:
- Чтобы включить GitHub Code Security отдельный репозиторий, нажмите Включить рядом с репозиторием в таблице «Repositories scaned».
- Чтобы включить GitHub Code Security в вашей организации, нажмите «Включить Code Security » в верхней части страницы. Здесь вы можете выбрать, включать ли его для всех репозиториев или выбранных репозиториев, а затем проверить оценочную стоимость перед подтверждением.