Синтез алгоритмов построения доверенных информационных систем с 3-х звенной архитектурой Пашков Д.В.

advertisement
Синтез алгоритмов построения доверенных
информационных систем с 3-х звенной
архитектурой
Пашков Д.В.
Руководитель к.т.н. Белов А.В.
Москва 2015
МИЭМ НИУ ВШЭ
1
Статистика
•
В ежегодном отчете компании Verizon об инцидентах, связанных с ЗИ сообщается,
что в среднем 30 % атак совершается против БД, при этом при успешной атаке
компрометируется 75 % данных. Для сравнения при успешных атаках на другие
системы 10%.
Количество
скомпрометированной
информации, %
80
70
60
Серверы оплаты
50
Терминалы оплаты
40
Сервер СУБД
30
Почтовый сервер
Файловый сервер
20
10
0
Объекты атак
2
Постановка задачи
• В связи с тем, что проектируемые КИС должны
хранить и обрабатывать разнокатегорийную
информацию, необходимо :
• Построить модели угроз и потенциальных
нарушителей.
• Обосновать выбор информационной
архитектуры КИС,
• Разработать для выбранной архитектуры
модель данных и алгоритмы взаимодействия
приложений, обеспечивающих требуемый
уровень безопасности КИС.
3
Основные угрозы КИС
1. Игнорирование введенных ограничений и нарушение
правил пользования системой при эксплуатации
системы.
2. Нарушение выделенных привилегий.
3. Выделение чрезмерных полномочий пользователям.
4. Эксплуатация уязвимостей СУБД.
5. Недостаточно полное логирование в журналах
аудита.
6. Выполнение запросов, заведомо приносящих ущерб
БД (SQL-инъекции).
7. Отказ в обслуживании.
8. Анализ трафика сети.
9. Подмена клиента.
10. Несанкционированный доступ к информации
11. Модификация, искажение, удаление информации
4
Требования ИБ,
предъявляемые к КИС
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Использование атрибутов безопасности.
Генерация журнала аудита.
Просмотр журнала аудита.
Хранение журнала аудита.
Регистрация пользователей в системе.
Обеспечение конфиденциальности данных.
Ролевое разграничение пользователей.
Разграничение доступа к информации.
Управление доступом к информации.
Аутентификация пользователей.
Управление данными.
Управление потоками информации.
Импорт данных.
Экспорт данных.
Контроль целостности данных.
5
Архитектура КИС
Наиболее часто при построении КИС применяются 2-х звенная и 3-х звенная
архитектура. Реализовать доверенную КИС на основе доверенного клиентского
ПО и не доверенной СУБД нельзя, поэтому доверенная КИС строится на основе
3-звенной архитектуры, использующей прокси-сервер.
Трехзвенная модель взаимодействия
6
Модель данных
•
Все таблицы напрямую связаны с таблицей пользователей вся
система построена на проверке атрибутов пользователя
Таблица
ролей
Журнал
аудита
Правила
фильтрации
Документы
Таблица
групп
Таблица
пользователей
Таблица
сеансов
7
Модель данных
Таблица пользователей
1.
2.
3.
4.
5.
6.
Логин
Хэш - в БД хранится свертка
пароля
Метка уровня доступа указывает уровень доступа
пользователя к информации
Метка группы доступа является указателем в
таблице групп доступа на
свою группу.
Системная роль - является
указателем в таблице ролей,
указывает роль пользователя в
системе
Время жизни учетной записи
Документы
1.
2.
3.
4.
5.
6.
7.
Имя (название документа)
Информация (текст)
Группа доступа- отражает
группу, к которой должен
принадлежать пользователь
для доступа к документу
Контрольная сумма – хэш
значение, вычисленное по
имени документа и
содержания (текста)
Дата создания
Уровень доступа- отражает
уровень доступа
Владелец- указывает на имя
пользователя, создавшего
документ
8
Журнал аудита
• Код выполняемой
операции - один из
кодов фильтра
запросов
• Запрос от клиента описание запроса или
сам запрос от клиента
• Статус запроса
• Имя запросившего
пользователя
• Сеанс выполняемого
запроса
• Дата и время запроса
Таблица сеансов
• Имя пользователя
• Состояние сеанса –
указывает открыт или
закрыт сеанс
• Время создания
сеанса
• Время закрытия
сеанса
9
Правила фильтрации
• Код запроса
• Метка роли
• Регулярное
выражение
Таблица групп
• Имя группы
• Идентификатор
(права группы)
Таблица ролей
• Имя роли
• Идентификатор
10
Подсистема обеспечения
ИБ
Архитектура подсистемы
11
Архитектура
•Подсистема
мандатного,
ролевого
разграничения
доступа
•Подсистема
аутентификации и
проверки
подлинности
•Подсистема проверки
операций, допустимости
выполнения запросов
•Контроль целостности
Разграничение
доступа
Аутентификация
Администрирование
Аудит
•Подсистема аудита
•Администрирование
пользователями,
сеансами, потоками,
подключениями
Фильтрация и
проверка операций
Упраление
информацией
•Подсистема управления
информацией.
•Изменение информации
и атрибутов
12
Разграничение доступа. Аутентификация.
Конфиденциальности данных обеспечивается путем
ограничения доступа к информации различных
пользователей
Каждый клиент ИС в соответствие с предъявленными
требованиями обладает следующими атрибутами:
•
Логин
•
Пароль
•
Метка уровня доступа
•
Метка группы доступа
•
Системная роль
•
Время жизни учетной записи
Разграничение доступа к данным основано на модели
мандатного разграничения, используются метки
доступа, группы доступа к информации.
Информация может быть 3 уровней:
•
Открытая информация
•
Конфиденциальная информация 2 уровня
•
Конфиденциальная информация 1 уровня
•
При этом каждая категория информации
делится на группы
Аутентификация пользователей:
Проверка подлинности, предъявляемых
идентификаторов пользователем ведутся на основе
криптографического алгоритма Стрибог ГОСТ Р
34.11-2012 на секретном ключе прокси-сервера.
Администрирование. Аудит:
Журнал аудита:
ИС регистрирует клиентов в системе а также их
действия в журнал, который обладает следующими
атрибутами:
•
Код выполняемой операции
•
Запрос от клиента
•
Статус запроса
•
Имя запросившего пользователя
•
Сеанс выполняемого запроса
•
Дата и время запроса
Подсистема проверки и фильтрации
операций:
Каждая операция имеет свой код, на основе
которого система принимает решение, может
ли ее выполнять отдельный пользователь. Данная
проверка выполняется на основе таблицы
Фильтр запросов.
Запрос запускается в специальной тестовой
среде, после этого, проводится анализ
результата на предмет возможного нанесения
вреда КИС.
Производится контроль целостности критически
важной информации.
13
Подсистема управления информацией:
•
•
Позволяет управлять
импортом/экспортом
информации.
Производит модерацию
добавленных данных, изменение
атрибутов информации.
Подсистема администрирования:
•
•
Импорт/Экспорт информации:
Предусмотрен функционал
ввода/вывода информации, вывод
производится на основе политики
доступа к информации, после ввода
информации документ проходит
модерацию суперпользователем,
после чего только становится
доступным.
•
Включает в себя управление
пользователями( добавление
новых, удаление, изменение
атрибутов пользователей).
Возможность управления
сеансами и подключениями, а
также блокирования хостов.
Мониторинг подсистемы аудита,
реакция на события.
Администратор системы выполняет функции управления доступом к
информации, он может поменять роль, уровень доступа, принадлежность
к группе пользователя, также осуществляет управление данными ИС:
может изменить уровень доступа или группу доступа документов,
осуществляет модерацию данных. Администратор системы создает
резервные копии данных.
14
Структурно-функциональная схема (Общий алгоритм)
Таблица
пользователей
Таблица сеансов
Успех
Проверка
клиента
Проверка
сеанса
Успех
Проверка
Неуспех
Успех
Код
ошибки
Обработка
запроса
Сервер
Запрос
Клиент
Параметры
фильтрации
Выполнение запроса
15
Аутентификация
Клиент:
Клиент:
логин/пароль
Проверка
подлинности
сервера(ПО)
Сервер:
Проверка
подлинности не
пройдена
Проверка
подлинности
клиента(ПО)
Сервер:
Проверка
идентификаторов
пользователя
1)
2)
3)
4)
5)
Клиент -> L-P user;L-P client
Сервер: hash(L+P) client
Сервер: hash(L+P) client
Сервер -> сеансовые
идентификаторы
Клиент: hash(L+P) server
Проверка
подлинности не
пройдена
Выделение
сеансового
идентификатора
16
Выборка документа
Документы
Таблица
пользователей
Запрос на
выборку
документа
Атрибуты
пользователя
• Уровень доступа
• Группа доступа
Документ
1
Документ
2
Документ
3
• Уровень
• Группа
• Уровень
• Группа
• Уровень
• Группа
Запрос
атрибутов
пользователя
1) Получив запрос на выборку документов, сервер
запрашивает атрибуты пользователя- уровень доступа,
группу доступа.
2) На основании параметра поиска, сервер осуществляет
поиск документов.
17
Проверка и выполнение запроса
Запрос от
пользователя
Проверка результата
выполнения запроса
на целостность БД
Расшифровывание
пакета
Выполнение запроса
в тестовой
виртуальной среде
Проверка
полномочий
пользователя
Проверка запроса на
регулярные
выражения
(Ролевое
разграничение)
(Параметры
фильтрации)
Выполнение запроса
Формирование
результата
Шифрование данных
Отправка результата
пользователю
18
Импорт, изменение, удаление документов
Операция: импорт, изменение,
удаление документа
Соответствующий документ
помечается в системе меткой (в
случае импорта документ
недоступен, удаление и изменениеостается в неизменном виде)
Модерация уполномоченным
пользователем системы (Ролевое
разграничение)
19
Реакция системы
Операция
Логирование
Анализ
Тип
события
Мониторинг
Значимость
операции
Проверка
Анализ
Реакция
Системы
20
Анализ решения относительно угроз безопасности
Угроза
Решение
Описание
Подмена клиента/Сервера
Шифрование трафика на
секретных ключах, проверка
подлинности на основе хэшфункций
Шифрование стойким
алгоритмом ГОСТ 28147-89.
Вычисление контрольной
суммы на основе ГОСТ 34.11
СТРИБОГ
Перехват трафика,
передаваемого по сети
Шифрование трафика на
секретном ключе стойком
криптографическим
алгоритмом
Алгоритм ГОСТ 28147-89.
Выявление логина/пароля
Стойкий алгоритм выработки
хэш суммы
ГОСТ 34.11 СТРИБОГ
Удаление, искажение
информации
Разграничение доступа,
Модерация данных.
Правильно определенная
политика доступа и разделения
полномочий и привилегий не
позволит пользователям
выполнить недоступные
операции. В случае выполнения
– операция проходит
модерацию
21
Угроза
Решение
Описание
Удаление, искажение
информации
Разграничение доступа,
Модерация данных.
Правильно определенная
политика доступа и разделения
полномочий и привилегий не
позволит пользователям
выполнить недоступные
операции. В случае выполнения
– операция проходит
модерацию
Выполнение SQL-инъекции
Фильтрация запросов,
выполнение в тестовой среде
Правильно определенные
регулярные выражения и
список запрещенных запросов
позволит минимизировать
данную угрозу
Неправомерный доступ к
информации(документам)
Мандатное и ролевое
разграничение доступа
Пользователь получит доступ к
информации только в
соответствие своим атрибутам,
при этом ему неизвестно о
существовании недоступных
документов
Неправомерные действия в
системе
Ролевое разграничение доступа
Пользователь не будет иметь
доступ к функционалу не
соответствующего его
системной роли
22
Отказ в обслуживании
Подсистема аудита, анализ
Система анализа событий
операций, реакция системы. заблокирует хосты
Чтение вверх/ Запись вниз
Мандатное разграничение
доступа, модерация
документов.
Уровень доступа и группа
доступа к документу
определяется во время
модерации, до проверки
документ будет недоступен.
Ошибки пользователей
Разграничение доступа,
модерация данных
Реализованный функционал
позволит уменьшить
количество ошибок
Нарушение целостности
данных
Контроль целостности,
проверка операций.
Резервное копирование
Выявление нарушения
целостности данных
основано на применении
ГОСТ 34.11 и проверки
операций на тестовой среде.
В случае сбоя и нарушения
целостности, информацию
можно восстановить с
резервной копии.
23
Сравнительный анализ стандартных
решений и предлагаемого
24
Криптографические методы
защиты
Аутентификация
Наиболее часто применяемые протоколы- Kerberos, RADIUS и NTSпротоколы AAA (Authentication , Authorization, Accounting)
Выдается сеансовый ключ, протоколы основаны алгоритмах:
AES, MD5 (Message-Digest algorithm 5), SHA-2.
Шифрование трафика: AES.
Предлагаются стандарты ГОСТ 28147-89 ГОСТ 34.11 об успешных
потытках криптоанализа неизвестно.
Контроль целостности
MD5 - ГОСТ 34.11
25
SQL-инъекции
Пример: поиск в системе документа по имени.
Select * from DOCUMENTS where NAME=’График дежурств’ and LEVEL=
LOW
Запрос возвращает документ с низким уровнем доступа.
Select * from DOCUMENTS where NAME=’’ union select *
from DOCUMENTS -- and LEVEL= LOW
Защита:
Обнаруживать аномальные SQL-выражения
Как?
• Грамматический анализ или регулярные выражения
• Белые списки или Черные списки
26
Модификация, искажение, удаление информации
•
•
Преднамеренное
Ошибки
Нарушение типа чтение вверх, запись вниз
Реакция системы защиты на события
Признать подозрительным вход в систему в необычно позднее время, вход в
систему под пользователем из другого региона, реагировать на многократный
ошибочный ввод пароля.
Соответствующая реакция: логирование, блокировка хоста, введение таймаута
для ввода идентификаторов.
Надежность и доверенность построенной системы
Предлагаемая система может быть полностью проанализирована, определить
реакцию системы на события, можно протестировать на все уязвимости,
выполнить доработку.
27
Спасибо за внимание!
Вопросы?
Пашков Денис
E-mail: denis__pashkov@mail.ru
28
Download