cvss

Ликбез: общая система оценки уязвимостей (CVSS)

БЮРО ПЕРЕВОДОВ

Разбирая недавно перевод предложения из стандарта PCI DSS, я натолкнулся на то, что переводчик переводит  «CVSS base score»  как «базовую оценку по шкале CVSS«. Мне это показалось в корне неверным, т.к. CVSS это скорее методика, система, поэтому мы попытались разобраться в этом вопросе поглубже, в связи с чем и предлагаем Вашему вниманию перевод такой вот ликбезной статьи. Надеюсь, пригодится.

 
cvss
Вступление
В этой статье мы вкратце расскажем вам об общей системе оценки уязвимостей [Common Vulnerability Scoring System, CVSS], версии 2.0 – открытой схеме для оценки уязвимостей ИТ. В этой системе используются группы метрик, а также дается описание базовых метрик [base metrics], вектора уязвимости [vector] и оценок уязвимости.  И, наконец, мы предоставим пример того, как на практике работает эта система. Чтобы изучить методику оценки уязвимостей получше, мы рекомендуем посмотреть наш курс об этичном хакинге на сайте InfoSec Institute.
 
Группы метрик 
Существует три группы метрик:I. Базовые метрики: используются для описания основополагающих сведений об уязвимости — возможности эксплуатации уязвимости и воздействии уязвимости на систему.
II. Временные метрики [temporal]: при оценке метрики учитывается время, например, опасность уязвимости [severity of the vulnerability] снижается с выходом официального обновления безопасности [official patch].
III. Контекстные метрики [environmental]: вопросы контекста принимаются во внимание при оценке опасности уязвимости. Например, чем больше систем подвержены [affected] уязвимости, тем выше ее опасность.В настоящей статье мы расскажем о базовых метриках.  Для тех, кто интересуется временными и контекстными метриками, мы рекомендуем смотреть руководство  A Complete Guide to the Common Vulnerability Scoring System Version 2.0 (или его перевод в исполнении Positive Technologies – прим. пер.).

Базовые метрики

Существуют метрики возможности эксплуатации [exploitability] и воздействия [impact]:

I. Возможность эксплуатации

a) Вектор доступа [access vector, AV] описывает возможный способ эксплуатации уязвимости:
— локальный [local, L] — уязвимость эксплуатируется только локально;
— локально-сетевой [adjacent network, A] — уязвимость может эксплуатироваться только из смежных сетей;
— сетевой [network, N] — уязвимость может эксплуатироваться удаленно.

Чем дальше может находиться источник атаки, тем опаснее уязвимость.

б) Сложность доступа [access complexity, AC] описывает уровень сложности атаки:
— Высокий уровень [high, H]— для эксплуатации уязвимости требуется выполнить определенную последовательность действий;
— Средний уровень [medium, M]— уязвимость нельзя отнести ни к сложной, ни к легкоэксплуатируемой;
— Низкий уровень [low, L] — уязвимость эксплуатируется просто.

Чем ниже оценка сложности доступа, тем опаснее уязвимость.

в) Метрика «аутентификация» [authentication, Au] описывает способ аутентификации для эксплуатации уязвимости:
— Многократная [multiple, M]— атакующий должен пройти аутентификацию два и более раз;
— Однократная [single, S]— атакующий должен пройти аутентификацию один раз;
— Нулевая [none, N]—аутентификация не требуется.

Чем меньше раз требуется проходить аутентификацию, тем опаснее уязвимость.

II. Воздействие

a) Метрика «воздействие на конфиденциальность» [confidentiality, C] описывает воздействие уязвимости на конфиденциальность данных системы:
— нулевое [none, N]—воздействие отсутствует;
— частичное [partial, P]—можно считать часть данных;
— полное [complete, C]—можно считать любые данные.

Чем сильнее воздействие на конфиденциальность данных в системе, тем опаснее уязвимость.

б) Метрика «воздействие на целостность» [integrity, I] описывает воздействие уязвимости на целостность данных системы:
— нулевое [none, N]—воздействие отсутствует;
— частичное [partial, P]—можно изменить часть данных;
— полное [complete, C]—можно изменить любые данные.

Чем сильнее воздействие на целостность данных в системе, тем опаснее уязвимость.

в) Метрика «воздействие на доступность» [availability, A] описывает воздействие уязвимости на доступность системы:
— нулевое [none, N]—воздействие отсутствует;
— частичное [partial, P]— уязвимость может вызвать в системе временные отказы в обслуживании или снижение производительности;
— полное [complete, C]— уязвимость может вызвать полный отказ системы в обслуживании.

Чем сильнее воздействие на доступность системы, тем опаснее уязвимость.

Обратите внимание на сокращенные названия метрик и их значения в скобках. Эти сокращения используются в описании базового вектора уязвимости (см. ниже).

Базовый вектор

Итак, поговорим о базовом векторе [base vector]. Он записывается в следующем формате:

AV:[L,A,N]/AC:[H,M,L]/Au:[M,S,N]/C:[N,P,C]/I:[N,P,C]/A:[N,P,C]

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

Оценка

Формулы расчета базовой оценки [base score], возможности эксплуатации и элементов оценки воздействия приведены в в руководстве complete Guide to the Common Vulnerability Scoring System Version 2.0 [см. выше]. Однако, считать все вручную необходимости нет,  так как существует калькулятор оценки уязвимостей — Common Vulnerability Scoring System Version 2 Calculator. Все, что нужно сделать специалисту по оценке — это внести значения для соответствующих метрик.

Уровень опасности

Базовая оценка зависит от оценки возможности эксплуатации и элементов оценок воздействия на систему и выставляется от 0 до 10, где 10 соответствует высочайшему уровню опасности уязвимости. Как бы то ни было, система CVSS 2.0 не переводит оценку в уровень опасности. Для получения информации об уровне опасности можно, например, использовать шкалу опасности, разработанную центром FortiGuard:

Уровень опасности FortiGuard Оценка по CVSS 2.0
Критический 9 – 10
Высокий 7 – 8.9
Средний 4 – 6.9
Низкий 0.1 – 3.9
Информационный 0

Складываем картинку

Для понимания того, как на практике работает схема CVSS 2.0 возьмем, к примеру, уязвимость в веб-приложении.  Следует помнить, что данная схема применяется для оценки уровня уязвимостей не только веб-приложений.

Уязвимость, позволяющая атаку типа «подделка межсайтовых запросов» [cross-site request forgery] в панели администратора, позволяет добавить нового пользователя, удалить имеющегося пользователя или вообще всех пользователей.

Попробуем сначала проанализировать базовые метрики и получить в итоге базовый вектор:

Вектор доступа (AV): сетевой (N)
Сложность доступа (AC): средняя (M)
Аутентификация (Au): нулевая (N)

Воздействие на конфиденциальность (C): нулевое (N)
Воздействие на целостность (I): частичное (P)
Воздействие на доступность (A): полное (C)

Базовый вектор (AV:N/AC:M/Au:N/C:N/I:P/A:C)

Пояснение:  Для эксплуатации уязвимости администратор должен посетить вебсайт злоумышленника. Этим объясняется «средний» уровень сложности доступа.  Вебсайт злоумышленника находится где-то в Интернете.  Значит вектор доступа – сетевой.  Для эксплуатации уязвимости не требуется аутентификации (администратору нужно только зайти на вебсайт злоумышленника). Злоумышленник может удалить всех пользователей, тем самым вызвав для них отказ системы в обслуживании. Именно поэтому воздействие уязвимости на доступность системы будет полным.  Удаление всех пользователей еще не значит удаление всех данных в системе.  Поэтому воздействие на целостность — частичное.  Наконец, воздействие на конфиденциальность нулевое, т.к. добавленный пользователь по умолчанию прав на чтение не имеет.

Теперь воспользуемся калькулятором Common Vulnerability Scoring System Version 2 Calculator  для подсчета элементов оценок (из элементов возможности эксплуатации и воздействия) и базовой оценки:

Оценка возможности эксплуатации [exploitability subscore]: 8.6
Оценка элементов воздействия: 7.8
Базовая оценка: 7.8

Теперь переведем эту оценку в уровень опасности по шкале FortiGuard:

Уровень опасности по FortiGuard  Высокий

Заключение

В данной статье мы дали описание открытой схемы для оценки уязвимостей IT — Common Vulnerability Scoring System (CVSS)  2.0. Были описаны базовые метрики, векторы и структура оценки.  Также был представлен показательный пример перевода оценки по CVSS 2.0 в уровни опасности по FortiGuard. И, наконец, был приведен пример того, как все это работает на практике.

Давид Чаган – исследователь безопасности в InfoSec Institute, а также руководитель отдела консультационных услуг по безопасности в компании в компании Future Processing.

Оригинал статьи: http://blogs.securiteam.com/index.php/archives/2228
Автор: Давид Чаган (Dawid Czagan)
Вольный перевод: БТП «Альянс ПРО», info@tran.su

 

Пишите серьёзные тексты, делайте у нас серьёзные переводы. 

2 комментариев

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

    • Спасибо, всё поправил.
      Евгений.

Обсуждение закрыто