Что такое CVSS?
Common Vulnerability Scoring System (CVSS) – является открытым международным стандартом, который используют для оценки уязвимости компьютерной системы, чтобы определить приоритетность для ее исправления.
Расчет оценок осуществляется с применением специальных формул на основе нескольких метрик. В результате произведенных расчетов удается вычислить три числовые оценки. Каждая из них имеет значение от 0 до 10. Чем выше показатель, тем опаснее уязвимость.
Стандарт был создан в 2005 году в результате исследований, которые проводил Национальный консультативный совет по инфраструктуре (НКСИ) в 2003-2004 годах. За эти годы стандарты были подвергнуты критике и доработаны. Последняя версия была выпущена в 2019 году.
Как было уже отмечено ранее, CVSS имеет три главные оценки, такие как базовая, временная и контекстная.
Базовая.
В эту группу относятся основные существенные характеристики уязвимости, которые были описаны ещё во второй версии стандарта (2.1). Они не зависят от условий среды и не подвергаются изменениям со временем.
Временная.
Данный тип уязвимостей был описан в главе 2.3. и подразумевает, что они могут меняться со временем, но при этом по–прежнему не зависят от условий среды.
Контекстная.
Третья группа уязвимостей была описана в главе 2.3. Этот тип уже имеет зависимость от условий среды.
В начале осуществляется составление базовых оценок. С их помощью определяются главные уязвимости системы. Объективная оценка характера уязвимости позволяет юзерам иметь ясное и интуитивно понятное представление об уязвимости.
Чтобы получить информацию об уязвимости уже с учетом условий среды, используют временные и контекстные оценки. На их основе осуществляются обоснованные решения для выбора метода снижения минимизации риска от найденной уязвимости.
Каким образом это работает?
После того, как были определены базовые метрики, на их основе происходит расчет через специальную формулу: BaseScore = roundTo1 Decimal(((0.6 x Impact) + (0,4 x Exploitability) — 1,5) x f(Impact)).
Кто использует CVSS?
Издатели бюллетеней безопасности.
Это могут быть как коммерческие, так и некоммерческие организации, которые публикуют базовую и временную метрику, а также векторы CVSS в свободном доступе. Документ содержит данные об обнаружении уязвимостей, поврежденных систем, а также ссылки на производителей, чтобы найти информацию об исправлении.
Производители приложений.
Они предоставляют базовые метрики и векторы для своих клиентов. Таким образом, пользователям предоставляется объективная информация о продукте, что в свою очередь помогает эффективно управлять рисками.
Организации пользователей.
Частные компании применяют стандарты CVSS, чтобы управлять уязвимостями. С помощью сканеров и других технологий мониторинга они находят уязвимости в сетевом или локальном приложении. После этого полученные данные объединяются с метриками CVSS для получения более полной картины. Таким образом, принимается решение о приоритетности проблем, которые стоит устранить в первую очередь.
Организации, сканирующие сеть для поиска уязвимостей.
На каждом хосте они предоставляют базовую метрику CVSS. Они используют потоки критических данных, чтобы улучшить свое управление IT–инфраструктурой. За счет этого удается сократить количество простоев и увеличить защиту от IT–угроз.
Организации по управлению безопасностью.
Они используют метрику CVSS в качестве исходных данных, чтобы определить уровень рисков и угроз, которым подвергается организация. Обычно эти организации используют сложные приложения с поддержкой сетевой топологии компании для предоставления полной и обоснованной информации своим клиентам о степени риска в их системах.
Какие преимущества дает использование стандарта CVSS?
Уязвимости оцениваются по единому стандарту.
Оценки уязвимостей нормализуются для всех программных и аппаратных платформ, что позволяет применять единую политику управления уязвимостями. Она имеет схожесть с SLA – Service Level Agreement (договор о предоставлении услуг). Благодаря этому возникающие проблемы могут быстро устраниться.
Открытость системы.
Благодаря стандарту CVSS возникает возможность определить индивидуальные особенности уязвимости, которые привели к указанной оценке.
Приоритезация рисков.
Наличие контекстной метрики позволяет выявить зависимости от среды. Таким образом, полученная метрика покажет реальную степень риска, которые имеются в данной организации с учетом других уязвимостей.
Какие существуют типы базовой метрики?
Метрики, входящие в базовую группу, показывают характеристики уязвимости, которые не имеют зависимости от времени и контекста. К ним относятся:
Вектор доступа – AV, Access Vector.
Указывает на то, каким образом происходит эксплуатация уязвимости. Имеет несколько вариантов значений, для которых существует правило: чем дальше злоумышленник находится от хоста во время эксплуатации уязвимости, тем выше ее оценка.
Варианты значений метрики:
Локальная – чтобы эксплуатировать уязвимость, у злоумышленника должен быть локальный доступ, то есть буквально физический, к системе, либо через локальную учетку.
Соседняя сеть – чтобы эксплуатировать уязвимость, злоумышленник должен использовать соседнюю сеть, то есть ту, которая имеет общую среду с уязвимым ПО.
Сетевая – в этом случае злоумышленник вступает в непосредственный контакт с уязвимым программным обеспечением, доступ которого ограничен только размером сетевого стека.
Сложность доступа – AC, Access Complexity.
Указывает на сложность эксплуатации атаки, когда злоумышленник получил доступ к целевой системе. Имеет несколько вариантов значений метрики:
Высокая – требуется специальных условий для эксплуатации. Среди которых такие, как:
Наличие привилегий в большинстве конфигураций у злоумышленника, либо одновременная эксплуатация уязвимости в других системах.
Жертва выполняет нетипичные действия, что приводит к атакам, основанным на методах социальной инженерии.
Наличие узкого окна при условиях Race condition.
Средняя – в данном случае должны действовать следующие условия:
Действия злоумышленников ограничены группой систем или пользователей, не имеющих должный уровень авторизации.
Требуется предварительный сбор информации для успешной эксплуатации.
Необходимо использовать методы социальной инженерии для получения определенного количества информации, которая позволит обмануть пользователей.
Низкая – здесь для эксплуатации уязвимости следует соблюдать следующие условия:
Неограниченный доступ (анонимный или недоверенный) к уязвимому продукту.
Конфигурация используется повсеместно или является стандартной.
Не требуется большого количества навыков, так как атака производится вручную.
Аутентификация – Au, Authentication.
Метрика, указывающая на число этапов, необходимых для прохождения аутентификации, которые злоумышленнику придется пройти в целевой системе для эксплуатации уязвимости. Меньше число учетной информации приводит к большему значению оценки. Имеет несколько вариантов значений метрики:
Множественный – злоумышленнику необходимо пройти аутентификацию более двух раз. При этом допускается использование одной и той же учетки несколько раз.
Одиночный – для аутентификации и эксплуатации уязвимости необходимо войти через командную строку или веб–интерфейс.
Отсутствует – чтобы эксплуатировать уязвимость, аутентификация не требуется.
Влияние на конфиденциальность – C, Сonfidentiality Impact.
Метрика, которая указывает на то, как успешная эксплуатация уязвимости влияет на сохранение конфиденциальности в системе. Значение оценки увеличивается в случае сильного воздействия на конфиденциальность.
Отсутствует – не затрагивает конфиденциальность системы никаким образом.
Частичное – злоумышленник не имеет контроля над информацией, либо ее потери невелики. Например, произошло разглашение данных или получен доступ к некоторым системным файлам.
Полное – злоумышленник получил доступ ко всем системным данным, что привело к полному их разглашению и раскрытию системных файлов.
Влияние на целостность – I, Integrity Impact.
Показывает степень влияния успешной эксплуатации уязвимости на целостность системы. При высоком воздействии значение оценки возрастает.
Отсутствует – не оказывает никакого влияния на целостность системы.
Частичное – злоумышленник может изменить некоторые системные файлы или данные, но не имеет контроля над измеряемыми данными, либо область влияния ограничена.
Полное – полное нарушение целостности системы и падение защиты. Злоумышленник имеет возможность менять любые файлы системы.
Влияние на доступность – A, Availability Impact.
Показывает, как успешная эксплуатация уязвимости влияет на доступность системы, то есть ее информационных ресурсов. Чем она выше, тем больше значение оценки.
Отсутствует – не оказывает никакого влияния на доступность системы.
Частичное – наблюдается снижение производительности и сбои в доступности ресурса.
Полное – полное отключение системы.
Какие существуют типы временной метрики?
Измерить степень угрозы уязвимости можно с помощью времени. На это влияют три фактора:
Подтвержденные технические детали уязвимости, статус исправления уязвимости и доступность кода. Временные метрики не оказывают влияния на базовые, поэтому являются необязательными. Их используют в тех случаях, если пользователю требуется уточнение базовой оценки.
Возможность использования – E, Exploitability.
Указывает на наличие или отсутствие кода, либо технической эксплуатации. В случае легкой эксплуатации уязвимости значение оценки возрастает.
Непроверенный – теоретически, эксплуатация возможна, так как эксплойт не известен.
Proof-of-Concept – произошла демонстрация атаки, которая не применима в большинстве систем, либо эксплойт, описывающий концепцию эксплуатации, оказался доступным. Также код или технологию нельзя применить в большинстве ситуаций, либо необходимо внести существенные изменения.
Функциональный – эксплоит доступен и используется в большинстве доступных ситуаций.
Высокий – автономный код позволяет легко эксплуатировать уязвимость, либо эксплоит не требуется, и детали широко известны.
Не определено – обычно пропускается в формуле, так как не оказывает влияния на оценку.
Уровень исправления – RL, Remediation Level.
Имеет важное значение для приоритезации. Наличие постоянного или временного исправления снижает временную оценку, чем снижает степень срочности проблемы при официальном исправлении. При менее выраженном официальном характере исправления снижается оценка.
Официальное исправление – доступно от официального производителя.
Временное исправление – временное официальное исправление от производителя.
Дополнительные действия – неофициальное решение, предоставляемое третьей стороной, иногда это могут быть пользователи.
Недоступен – обновление недоступно, либо его не могут применить.
Не определен – не оказывает влияния на оценку и пропущена в формуле.
Степень достоверности отчета – RC, Report Confidence.
Показывает уровень конфиденциальности данных о существовании уязвимости и степень достоверности известных технических деталей. Подробная информация об уязвимости указывает на высокую оценку.
Не подтвержден – имеется несколько противоречивых сообщений, которые не могут считаться достоверными.
Не доказан – есть сообщения из разных неофициальных источников, которые, возможно, независимы в сфере безопасности или исследовательских организаций.
Подтвержден – есть подтверждение со стороны производителя либо автора технологии. Также статус может быть подтвержден каким–либо внешним событием.
Не определен – нет в формуле, так как не влияет на оценку.
Какие бывают типы контекстной метрики?
Это метрика, показывающая описание уязвимости, связанные со средой пользователя. Они не оказывают влияния на базовую оценку и поэтому не являются обязательными, но их можно использовать для уточнения.
Вероятность нанесения ущерба – CDP, Collateral Damage Potential.
Указывает на потенциальную возможность повреждения либо утраты имущества или оборудования. Помогает в оценке экономических потерь, которые связанны с производительностью или прибылью. Чем выше уровень допустимой опасности, тем выше оценка.
Отсутствует – не имеет допустимой угрозы повреждения или утраты оборудования, а также снижения эффективности или уровня прибыли.
Низкий – при удачной эксплуатации, уязвимость может стать причиной небольших повреждений устройства или собственности, либо снижения эффективности или прибыли.
Средний, пониженный – при удачной эксплуатации – приводит к средней степени повреждения устройства или собственности, либо среднего снижения эффективности или прибыли.
Средний, повышенный – при удачной эксплуатации – приводит к заметным повреждениям устройства или собственности, либо заметному снижению эффективности или прибыли.
Высокий – при удачной эксплуатации – приводит к катастрофическим повреждениям устройства или собственности, либо катастрофическому снижению эффективности или прибыли.
Разумеется, каждая организация сама определяет точное значение перечисленных категорий.
Плотность целей – TD, Target Distribution.
Показывает процент уязвимых систем от общего числа всех имеющихся систем. Чем больше этот процент, тем больше оценка.
Отсутствует – 0%, так как не существует целевых систем, либо имеются слишком специализированные цели, существующие в лабораторных условиях.
Низкий – 1% – 25%, так как имеются некоторые цели, но малочисленные.
Средний – 26% – 75%, так как имеется среднее количество целей.
Высокий – 76% – 100%, так как существует большое количество целей.
Требования к безопасности – Security Requirements.
Благодаря этому аналитики определяют CVSS–оценку в зависимости от важности уязвимого устройства или ПО для организации. В случае, если уязвимость найдена в ПО или аппаратном обеспечении, которое отвечает за бизнес–функционал, аналитик может приписать большее значение доступности, относительно секретности и целостности.
Низкий – потеря секретности или целостности или доступности имеет небольшое неблагоприятное воздействие на компанию или ее частное лицо.
Средний – потеря секретности или целостности или доступности имеет серьезное неблагоприятное воздействие на компанию или ее частное лицо.
Высокий – потеря секретности или целостности или доступности – оказывает весьма серьезное неблагоприятное воздействие на компанию или ее частное лицо.
Не определен – не влияет на оценку, поэтому не указано в формуле.