Pull to refresh

Аудит информационной безопасности. SCAP ликбез

Reading time 7 min
Views 15K


В статье:
> показана роль требований к защищенности в процессе аудита;
> описан SCAP подход к формализации требований;
> рассмотрены три сканера безопасности;
> поверхностно разобрана логика работы сканеров, поддерживающих SCAP;
> представлены вид результатов аудита и возможности по исправлению недостатков.



Введение


Информационно-вычислительная система — совокупность данных (или баз данных), систем управления базами данных и прикладных программ, функционирующих на вычислительных средствах как единое целое для решения определённых задач [ГОСТ Р 53622-2009].

Далее понятие информационная система употребляется тождественно терминам: информационно-вычислительная система, операционная система, база данных, сетевое устройство и т.д.

Стандарты, приказы, рекомендации определяют требования к информационным системам. Требования к безопасной конфигурации, управлению уязвимостями и обновлениями встречаются в лучших практиках от CIS (Center for Internet Security), стандарте PCI DSS, приказах ФСТЭК и других документах.

Для проверки того, насколько информационная система соответствует требованиям, выполняют аудит информационной безопасности.
Информационная система — сложный и динамичный объект. Поэтому полный, да еще и периодический, аудит безопасности админ видит в кошмарах. Например рекомендации CIS по безопасной настройке Windows 10 включают сотни пунктов на тысяче листах в бумаге.
Выход один — автоматизация. Методику автоматизации аудита, де-факто — стандарт, разработал NIST.

Статья иллюстрирует процесс аудита информационной безопасности с учетом этого стандарта.


Структурная схема процесса автоматизированного аудита безопасности информационных систем с использованием SCAP

Требования


Регуляторы, исследователи, руководители определяют в законах, рекомендациях и политиках высокоуровневые бумажные требования к информационным системам.

Например PCI DSS определяет требования к безопасной конфигурации систем и управлению уязвимостями.

Управление конфигурациями и уязвимостями — элемент системы управления информационной безопасностью. Этот элемент включает обязательную периодическую проверку того, насколько конфигурации систем остаются неизменными, а новые уязвимости закрываются патчами.

CIS в последних рекомендациях указывает на необходимость выполнения следующих четырех пунктов:
  • периодическая проверка конфигураций безопасности;
  • учет одобренных исключений в конфигурациях;
  • предупреждения о несанкционированных изменениях конфигураций;
  • периодическое выявление уязвимостей.

Выполнение указанных требований предполагает автоматизацию. Проблема автоматизации аудита — высокоуровневое неформализованное описание требований. Для автоматизации требования должны быть выражены на языке, который понятен машине. Решение предложил NIST и в 2009 году разработал спецификацию SCAP.

SCAP


SCAP (Security Content Automation Protocol) — спецификация, которая определяет три процесса: поиск и исправление уязвимостей, автоматическую настройку конфигураций, а также оценку уровня безопасности.

SCAP включает четыре языка: XCCDF, OVAL, OCIL, ARF; четыре схемы идентификации: CCE, CPE, SWID, CVE и две метрики: CVSS, CCSS.
Основные компоненты SCAP — языки XCCDF и OVAL. XCCDF и OVAL детально рассмотрены   тут.

XCCDF (Extensible Configuration Checklist Description Format) — язык, который описывает контрольные списки настроек безопасности и связывает другие компоненты SCAP.

OVAL (Open Vulnerability and Assessment Language) — декларативный язык логических утверждений. OVAL описывает уязвимости и необходимое состояние конфигурации информационной системы.

XCCDF содержит наборы требований к информационным системам, а OVAL — инструкции для интерпретатора, которые эти требования формализуют. Интерпретатор — специальный сканер, который понимает язык SCAP.

Требования, которые преобразовали в инструкции для интерпретатора, называют SCAP-контентом.

Начальник отдела или администратор безопасности видит бумажные требования и задается вопросом «Где брать SCAP-контент?».

  • SCAP-контент можно создавать самому, что трудоемко и требует понимания спецификаций. Жизнь упрощает SCAP-редактор с открытым исходным кодом и графическим интерфейсом.
  • Можно пользоваться открытыми ресурсами. Например база уязвимостей ФСТЭК, требования USGCB или репозиторий MITRE.
  • Покупать. Некоторые производители в комплекте со сканером предлагают подписку на базы.

Интерпретаторы


Формализованные требования в виде SCAP-контента являются входными данными так называемых интерпретаторов или сканеров. Сканеров существует великое множество. Раньше MITRE вел учет «авторизованных» организаций, выпускаемых ими продуктов и репозиториев OVAL. Теперь этим занимается CIS. Я не нашел на их сайте такой-же перечень.

Рассмотрим некоторые бесплатные интерпретаторы: OVALdi, OpenSCAP и ScanOVAL.

OVALdi


В OVALdi заложены две функции — демонстрация оценки и проверка синтаксиса OVAL-документов. Тем не менее возможно использование для проведения аудита. Есть версии как для Windows, так и для Linux. Распространяется по BSD лицензии.

Управление OVALdi возможно только из командной строки и только локально.
Для запуска сканирования нужно ввести команду с правами администратора:

ovaldi.exe -m -o "definitions.xml"

где m — не проверять целостность OVAL-документа, o — путь к OVAL-документу.

OpenSCAP


Проект компании Red Hat. OpenSCAP представлен множеством продуктов, среди которых OpenSCAP Base — сканер с CLI интерфейсом и открытым исходным кодом и SCAP Workbench — сканер с GUI интерфейсом.


Интерфейс SCAP Workbench

Несмотря на то, что средства OpenSCAP подходят для Windows, бОльшие возможности представлены для unix-подобных систем, т.к. изначально проект направлен только на их оценку.

Интерпретатор запускается командой в терминале:

oscap oval eval "D:\definitions.xml" --report "D:\results.html",

после чего будет выполнена проверка системы по инструкциям в OVAL-документе D:\definitions.xml с сохранением результатов в файл D:\results.html.

SvanOVAL


Средство, разработанное для ФСТЭК одной российской компанией. Средство бесплатное и подходит как для Windows, так и для Linux (Astra).


Интерфейс ScanOVAL

Главный недостаток состоит в следующем. Возможности средства ограничены проверкой только на уязвимости из БДУ ФСТЭК. При этом проверяется цифровая подпись OVAL-документа. Несмотря на недостатки, ScanOVAL — большой шаг ФСТЭК к небумажной безопасности.

SCAP-логика


Для упрощения многие нюансы не учтены, что принципов SCAP, в целом, не нарушает, но позволяет лучше понять сам подход. Детально SCAP-логика представлена тут.


Схема базовой логики SCAP

XCCDF-документ содержит профили, один из которых можно выбрать для проверки, например — поиск уязвимостей в Windows 10 или соответствие каким-то конкретным требованиям. Фактически профили содержат контрольные списки, которые должны быть проверены для определения того, соответствует ли система этому профилю.

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

Но главное, что содержит каждый элемент контрольного списка — это ссылка на конкретное определение в связанном OVAL-документе. После обработки OVAL-определения интерпретатор возвращает результат булева типа (true или false), на основе которого делается вывод о выполнении требования из контрольного списка.

В OVAL-документе определения формируют логическую связку из тестов, которые должны быть пройдены. Каждый тест с помощью логических операторов связывает объекты и состояния.

Тесты, объекты и состояния бывают различных типов, которых достаточно много. Именно их многообразие определяет широкие возможности спецификации SCAP.

Например для Windows, в числе прочих, существует тип group_sid (group_sid_test, group_sid_object и group_sid_state), который позволяет по SID идентификатору оценить пользователей и подгруппы. А тип dpkginfo для Linux позволяет проверить информацию о заданном DPKG пакете. Тип textfilecontent не зависит от системы и обеспечивает проверку содержимого текстового файла, например файла конфигураций.

Состояние в OVAL-документе задает требуемое значение параметра, который характеризует какой-то объект.

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

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

Например, если существует требование обеспечить неизменность исполняемых файлов, то при его переводе в SCAP-контент в качестве объекта будет задан конкретный исполняемый файл, который определяется полным именем: .../example.exe. Состояние будет задано требуемым значением хеш-суммы: D41...27E. Тест будет определять операцию сравнения: equal — равенство. При этом интерпретатор вычислит хеш-сумму файла .../example.exe и сравнит ее с заданной D41...27E. В случае их совпадения — вернет положительный результат.

Результаты


Согласно спецификации SCAP результаты аудита представляюстя в формате ARF (Asset Reporting Format).

Отчет в формате ARF содержится в XML-документе и включает описания профилей, требований из контрольных списков и итоговые результаты по каждому пункту из контрольного списка.

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


Пример результатов проверки Windows 10 на наличие уязвимостей с помощью интерпретатора OVALdi

Исправление


Возможности протокола SCAP предполагают автоматическое исправление найденных несоответствий и устранение уязвимостей (функционал должен поддерживаться системой автоматизированного аудита).

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

Наиболее распространен вариант, когда результаты проверки представлены перечнем невыполненных требований и текстовым описание действий, которые нужно выполнить для исправления. Например как в бесплатной версии CIS-CAT.


Пример результатов интерпретатора CIS-CAT Lite с рекомендациями по устранению

Заключение


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

SCAP предоставляет гибкую и многогранную методологию автоматизации, которая, однако, имеет недостатки:

  • сложность перевода высокоуровневых вербальных требований в формализованный SCAP-контент;
  • сложность создания интерпретаторов, позволяющих использовать весь потенциал спецификации SCAP.

С другой стороны, с точки зрения конечного пользователя, средства SCAP это простой и эффективный инструмент, который позволяет сократить временные затраты и повысить уровень безопасности администрируемой инфраструктуры.
Only registered users can participate in poll. Log in, please.
Что хотелось бы увидеть дальше?
53.33% Детали XCCDF и OVAL. 8
46.67% Развертывание и использование бесплатной системы автоматизации аудита от Red Hat. 7
15 users voted. 3 users abstained.
Tags:
Hubs:
+6
Comments 8
Comments Comments 8

Articles