11. Модель CIA в информационной безопасности
Введение
При изучении информационной безопасности необходимо понимать, что именно мы пытаемся защитить.
Информационная система может содержать важные данные, сетевое оборудование, серверы, учетные записи пользователей и различные сервисы. Однако сама по себе защита этих объектов не является конечной целью.
Главная задача информационной безопасности — обеспечить определенные свойства информации и информационных систем.
Для описания этих свойств широко используется модель CIA.
CIA — это аббревиатура от трех английских терминов: - Confidentiality — конфиденциальность; - Integrity — целостность; - Availability — доступность.
На русском языке модель часто называют триадой информационной безопасности.
Упрощенно она представляется так:
Информационная
безопасность
|
+-------------+-------------+
| | |
v v v
Конфиденциальность Целостность Доступность
Confidentiality Integrity Availability
C I A
Эти три свойства являются основой для анализа угроз и выбора средств защиты.
Важно понимать, что информационная безопасность не сводится только к защите от вирусов или хакерских атак.
Например: - если посторонний человек прочитал конфиденциальный файл — нарушена конфиденциальность; - если кто-то изменил данные в базе — нарушена целостность; - если пользователи не могут открыть работающий сервер — нарушена доступность.
Что такое модель CIA
Модель CIA — это концептуальная модель информационной безопасности, описывающая три основных свойства, которые необходимо обеспечивать при защите информации: 1. конфиденциальность; 2. целостность; 3. доступность.
Каждая система должна оцениваться с точки зрения всех трех свойств.
Например, рассмотрим сервер базы данных:
Сервер БД
|
+-------------+-------------+
| | |
v v v
Конфиденциальность Целостность Доступность
| | |
Кто видит? Кто меняет? Кто может
данные? подключиться?
Защита только одного свойства недостаточна.
Например, база данных может быть полностью защищена от чтения посторонними, но при этом постоянно недоступна пользователям.
С точки зрения информационной безопасности такая система не может считаться полностью защищенной.
Конфиденциальность
Конфиденциальность (Confidentiality) — свойство информации, при котором доступ к ней получают только те лица, системы или процессы, которым такой доступ разрешен.
Главный вопрос конфиденциальности:
Кто имеет право увидеть или получить эту информацию?
Например, в организации есть файл:
Зарплаты сотрудников.xlsx
Доступ к нему может иметь:
Директор ✓
Бухгалтерия ✓
Системный администратор возможно
Обычный сотрудник ✗
Посторонний ✗
Если обычный сотрудник или посторонний человек получает доступ к файлу без разрешения, конфиденциальность нарушена.
Что необходимо защищать с точки зрения конфиденциальности
Конфиденциальной может быть не только содержимое файлов.
К защищаемой информации относятся: - пароли; - учетные записи; - персональные данные; - финансовая информация; - документы; - служебная переписка; - коммерческая тайна; - конфигурация сетевого оборудования; - ключи шифрования; - токены и идентификаторы сессий; - данные клиентов; - информация о внутренней структуре сети.
Например, информация:
Адрес сервера: 192.168.10.15
сама по себе может не быть секретной.
Но информация:
Адрес сервера
+
логин администратора
+
пароль
уже представляет серьезную угрозу безопасности.
Угрозы конфиденциальности
Конфиденциальность может быть нарушена различными способами.
Основные угрозы: - перехват трафика; - несанкционированный доступ; - кража учетных данных; - вредоносное программное обеспечение; - утечка данных; - неправильная настройка прав доступа; - потеря устройства; - использование слабых паролей; - социальная инженерия; - ошибки сотрудников.
Например:
Пользователь
|
| пароль
v
Незащищенный канал
|
v
Злоумышленник
Если пароль передается без защиты и злоумышленник получает возможность наблюдать трафик, конфиденциальность нарушается.
Основные средства обеспечения конфиденциальности
Для защиты конфиденциальности применяются:
Аутентификация
Позволяет определить, кто пытается получить доступ.
Например:
Логин + пароль
или:
Пароль + код MFA
Авторизация
Определяет, какие действия разрешены конкретному пользователю.
Шифрование
Защищает информацию от прочтения посторонними.
Разграничение доступа
Пользователь получает только необходимые ему права.
Сегментация сети
Разделяет различные группы пользователей и ресурсов.
Защита учетных записей
Используются сложные пароли, MFA и другие механизмы.
Принцип наименьших привилегий
Для обеспечения конфиденциальности важен принцип:
Пользователь должен иметь только те права, которые необходимы ему для выполнения работы.
Например, бухгалтеру необходимо работать с бухгалтерской базой.
Ему необязательно предоставлять: - доступ к сетевому оборудованию; - права администратора; - доступ к базе данных отдела кадров; - доступ ко всем серверам организации.
Упрощенно:
Необходимые права
↓
+-------+
| Доступ|
+-------+
↓
Только необходимые ресурсы
Чем шире права пользователя, тем больше информации потенциально может оказаться доступной при компрометации его учетной записи.
Целостность
Целостность (Integrity) — свойство информации, при котором данные остаются правильными, полными и не изменяются несанкционированным образом.
Главный вопрос целостности:
Осталась ли информация правильной и неизменной?
Например, в базе данных хранится:
Баланс клиента: 50 000 рублей
Если злоумышленник изменил его на:
Баланс клиента: 500 000 рублей
произошло нарушение целостности.
Целостность не означает «данные никогда не меняются»
Важно понимать разницу.
Изменение данных само по себе не является нарушением целостности.
Например:
Было:
Количество товара = 10
Поступило 5 единиц
Стало:
Количество товара = 15
Изменение произошло законно.
Целостность нарушается, когда данные: - изменяются без разрешения; - изменяются ошибочно; - повреждаются; - подменяются; - становятся неполными; - теряют достоверность.
Поэтому целостность означает не отсутствие изменений, а контролируемое и корректное изменение информации.
Угрозы целостности
Целостность может быть нарушена вследствие: - несанкционированного изменения файлов; - изменения записей базы данных; - вредоносного ПО; - компрометации учетной записи; - ошибок пользователей; - ошибок программного обеспечения; - сбоев оборудования; - повреждения файлов; - атак Man-in-the-Middle; - неправильной настройки системы.
Например:
Пользователь
|
| правильные данные
v
Злоумышленник
|
| измененные данные
v
Сервер
Такой сценарий является одной из причин, почему необходимо защищать не только конфиденциальность, но и целостность.
Контроль целостности
Для контроля целостности используются различные механизмы.
Хеширование
Для файла можно вычислить хеш:
Файл
↓
Хеш-функция
↓
A81F...92C
Если файл изменился:
Измененный файл
↓
Хеш-функция
↓
7D31...AB4
Хеши отличаются.
Это позволяет обнаружить изменение данных.
Цифровая подпись
Цифровая подпись позволяет подтвердить: - кто подписал данные; - что данные не были изменены после подписания.
Упрощенно:
Данные
|
v
Цифровая подпись
|
v
Получатель
|
v
Проверка
Если данные были изменены после формирования подписи, проверка может завершиться ошибкой.
Цифровые подписи широко применяются в: - электронном документообороте; - программном обеспечении; - сертификатах; - различных информационных системах.
Контроль доступа и целостность
Права доступа также помогают защищать целостность.
Например:
Обычный пользователь
|
+-- чтение ✓
+-- изменение ✗
Администратор
|
+-- чтение ✓
+-- изменение ✓
Если обычный пользователь не должен менять системный файл, ему не предоставляется соответствующее право.
Таким образом, разграничение доступа помогает одновременно обеспечивать: - конфиденциальность; - целостность.
Резервное копирование и целостность
Резервные копии также связаны с целостностью.
Предположим, база данных была повреждена:
Основная БД
↓
Повреждение
↓
Данные стали некорректными
При наличии резервной копии:
Основная БД
X
|
v
Повреждение
Резервная копия
|
v
Восстановление
Однако резервная копия должна сама быть защищена.
Если злоумышленник получил доступ и к основной системе, и к резервным копиям, восстановление может оказаться невозможным.
Доступность
Доступность (Availability) — свойство информационной системы, при котором авторизованный пользователь может получить доступ к необходимому ресурсу тогда, когда это требуется.
Главный вопрос доступности:
Может ли пользователь получить доступ к ресурсу в нужный момент?
Например, сервер базы данных может быть полностью исправен с точки зрения хранения информации, но если он не принимает подключения, пользователи не смогут работать.
Что влияет на доступность
На доступность влияют: - работоспособность серверов; - состояние сетевого оборудования; - пропускная способность каналов; - работа сетевых сервисов; - наличие электропитания; - состояние оборудования; - программные ошибки; - нагрузка; - резервирование; - качество сетевого подключения.
Таким образом, доступность зависит не только от информационной безопасности, но и от общей надежности инфраструктуры.
Угрозы доступности
Основные угрозы: - DoS; - DDoS; - отказ оборудования; - сбой программного обеспечения; - повреждение диска; - отсутствие электропитания; - перегрузка сервера; - ошибки администратора; - повреждение сетевого оборудования; - обрыв канала связи; - природные и физические воздействия.
Например:
Пользователь
|
X
|
Сервер
|
отказ
Информация на сервере может оставаться полностью целой, но пользователи не смогут ее получить.
Средства обеспечения доступности
Для повышения доступности применяются: - резервирование; - отказоустойчивые системы; - резервные каналы; - несколько серверов; - балансировка нагрузки; - резервное электропитание; - резервное копирование; - мониторинг; - кластеризация; - защита от DDoS; - план аварийного восстановления.
Например:
Пользователи
|
v
Балансировщик
/ \
v v
Сервер 1 Сервер 2
Если один сервер выходит из строя, второй может продолжить обслуживание пользователей.
Высокая доступность
Высокая доступность (High Availability, HA) — способность системы продолжать предоставлять сервис при отказе отдельных компонентов.
Упрощенно:
Система
|
+-----+-----+
| |
Сервер 1 Сервер 2
| |
+-----+-----+
|
Сервис
Если один сервер выходит из строя:
Сервер 1 — отказ
Сервер 2 — продолжает работу
Пользователь может даже не заметить отказ отдельного компонента.
Взаимосвязь трех свойств
Очень важно понимать, что CIA — это не три полностью независимых свойства.
Они постоянно взаимодействуют.
Например, слишком строгие ограничения доступа могут повысить конфиденциальность, но одновременно снизить доступность.
Слишком строгий доступ
↓
Безопаснее
↓
Но часть пользователей
не может работать
↓
Снижение доступности
С другой стороны, если открыть доступ всем:
Максимальная доступность
↓
Но любой пользователь
может получить данные
↓
Снижение конфиденциальности
Поэтому задача администратора заключается в поиске разумного баланса.
Пример с корпоративной сетью
Рассмотрим небольшую организацию:
Интернет
|
Firewall
|
+------+------+
| |
Серверы Пользователи
|
+-----+-----+
| |
БД Файлы
Теперь рассмотрим три свойства.
Конфиденциальность
Пользователь не должен получить доступ к базе данных, если это не входит в его обязанности.
Целостность
Пользователь не должен изменять записи базы данных без соответствующих полномочий.
Доступность
Авторизованный сотрудник должен иметь возможность работать с базой данных в рабочее время.
Получается:
База данных
|
+-----------+-----------+
| | |
v v v
Кто видит? Кто меняет? Доступна ли?
| | |
C I A
Пример с веб-сайтом
Рассмотрим интернет-магазин.
Конфиденциальность
Данные клиентов не должны быть доступны посторонним.
Целостность
Цена товара не должна самопроизвольно изменяться.
Доступность
Покупатели должны иметь возможность открыть сайт.
Можно представить:
Интернет-магазин
|
+------------+------------+
| | |
v v v
Данные Каталог Веб-сервис
клиентов товаров
| | |
C I A
Если злоумышленник украл базу клиентов — нарушена C.
Если изменил цены — нарушена I.
Если провел DDoS и сайт перестал работать — нарушена A.
Пример с учетной записью
Рассмотрим учетную запись администратора.
Логин: admin
Пароль: ********
Конфиденциальность
Пароль не должен стать известен постороннему.
Целостность
Злоумышленник не должен изменить настройки учетной записи.
Доступность
Администратор должен иметь возможность войти в систему, когда это необходимо.
Получается:
Пароль защищен
↓
Конфиденциальность
Настройки не изменены
↓
Целостность
Учетная запись работает
↓
Доступность
Пример с сетевым оборудованием
Рассмотрим маршрутизатор.
Конфиденциальность
Конфигурация маршрутизатора не должна быть доступна посторонним.
Целостность
Никто без разрешения не должен изменять: - маршруты; - ACL; - VLAN; - настройки интерфейсов; - параметры безопасности.
Доступность
Маршрутизатор должен продолжать передавать трафик.
Маршрутизатор
|
+-------------+-------------+
| | |
v v v
Конфигурация Настройки Передача
скрыта? защищены? работает?
| | |
C I A
Баланс CIA
Невозможно просто максимально увеличить каждое свойство независимо от остальных.
Например, можно создать систему:
Доступ запрещен всем
В этом случае конфиденциальность будет высокой.
Но доступность практически отсутствует.
Поэтому необходимо определить: - кто должен иметь доступ; - к каким ресурсам; - в какое время; - какие действия разрешены; - какой уровень доступности необходим; - какие данные являются критическими.
CIA и управление рисками
Модель CIA используется при оценке рисков.
Например, есть сервер базы данных.
Необходимо определить:
Что произойдет при утечке?
Конфиденциальность
↓
Высокий ущерб
Что произойдет при изменении данных?
Целостность
↓
Высокий ущерб
Что произойдет при недоступности сервера?
Доступность
↓
Средний/высокий ущерб
После этого выбираются соответствующие меры защиты.
Не все данные одинаково важны
Разные информационные системы имеют разные приоритеты.
Например:
Интернет-магазин
Особенно важна: доступность.
Если сайт недоступен, организация теряет клиентов.
Банк
Особенно важны: конфиденциальность и целостность.
Ошибочные или измененные финансовые данные могут привести к серьезным последствиям.
Архив
Может быть особенно важна: целостность.
Архив должен сохранять данные неизменными в течение длительного времени.
Поэтому модель CIA помогает определить приоритеты защиты.
CIA для сетевого администратора
При проектировании или настройке сети администратор должен задавать три вопроса.
Вопрос 1
Кто должен иметь доступ к информации?
Это вопрос конфиденциальности.
Вопрос 2
Кто и каким образом может изменить информацию?
Это вопрос целостности.
Вопрос 3
Может ли авторизованный пользователь получить доступ к информации тогда, когда она ему нужна?
Это вопрос доступности.
Можно представить:
Ресурс
|
+-----------+-----------+
| | |
v v v
Кто? Что менять? Когда доступен?
| | |
C I A
Практический пример анализа
Допустим, в учебной сети есть сервер:
IP: 192.168.10.10
Сервис: Web
Рассмотрим три ситуации.
Ситуация 1
Студент получает доступ к административной странице, к которой у него не должно быть доступа.
Нарушение конфиденциальности.
Ситуация 2
Студент изменяет конфигурацию сервера без разрешения.
Нарушение целостности.
Ситуация 3
Из-за перегрузки сервер перестает отвечать.
Нарушение доступности.
Как строится защита на основе CIA
Защита должна соответствовать конкретной угрозе.
Угроза
↓
Какое свойство нарушается?
↓
C / I / A
↓
Выбор средств защиты
Например:
Перехват трафика
↓
Конфиденциальность
↓
TLS / VPN / SSH
Другой пример:
Изменение конфигурации
↓
Целостность
↓
ACL / права доступа / журналирование /
контроль изменений / резервные копии
Еще один:
DDoS
↓
Доступность
↓
Фильтрация / резервирование /
балансировка / DDoS-защита
CIA и Defense in Depth
Триада CIA хорошо сочетается с принципом Defense in Depth — многоуровневой защиты.
Например:
Интернет
|
[Firewall]
|
[Сегментация]
|
[Контроль доступа]
|
[Сервер]
|
[Мониторинг]
|
[Резервные
копии]
Каждый уровень может защищать одно или несколько свойств CIA.
Например: - Firewall — доступ и фильтрация; - шифрование — конфиденциальность; - права доступа — конфиденциальность и целостность; - резервирование — доступность; - резервные копии — целостность и восстановление доступности; - мониторинг — обнаружение нарушений.
Почему CIA — не полный перечень всех свойств безопасности
Триада CIA является фундаментальной моделью, но информационная безопасность не ограничивается только тремя понятиями.
В зависимости от задачи дополнительно рассматриваются: - аутентичность; - подотчетность; - неотказуемость; - идентификация; - приватность; - надежность.
Например, пользователь может получить данные, которые: - доступны; - целостны; - конфиденциальны,
но при этом необходимо еще убедиться, что данные действительно принадлежат тому источнику, за который себя выдают.
Поэтому CIA следует рассматривать как основу, а не как полный список всех требований безопасности.
CIA и аутентичность
Аутентичность отвечает на вопрос:
действительно ли объект является тем, за кого себя выдает?
Например:
Пользователь
|
| "Я — admin"
v
Система
|
| проверка
v
Подтверждение личности
Аутентичность особенно важна для защиты от spoofing и Man-in-the-Middle.
Она тесно связана с CIA, но концептуально является отдельным свойством.
CIA и подотчетность
Подотчетность означает возможность определить, какие действия были выполнены и кем.
Например:
08:35 — user01 вошел в систему
08:37 — user01 изменил файл
08:40 — admin01 изменил настройки
Для этого используются: - журналы событий; - аудит; - системы мониторинга; - централизованный сбор логов.
Подотчетность помогает расследовать нарушения конфиденциальности, целостности и доступности.
Практический алгоритм для администратора
При защите нового ресурса можно использовать следующий алгоритм:
1. Определить ресурс
↓
2. Определить пользователей
↓
3. Определить критичность
↓
4. Оценить C
↓
5. Оценить I
↓
6. Оценить A
↓
7. Определить угрозы
↓
8. Выбрать меры защиты
↓
9. Настроить мониторинг
↓
10. Проверять защиту
Это позволяет перейти от абстрактной безопасности к конкретным техническим решениям.
Общая схема модели CIA
В конечном итоге модель можно представить следующим образом:
CIA
|
+---------------+---------------+
| | |
v v v
Confidentiality Integrity Availability
Конфиденциальность Целостность Доступность
| | |
v v v
Кто видит? Кто меняет? Кто получает?
Что скрывать? Что изменяется? Когда получает?
| | |
v v v
Шифрование Хеширование Резервирование
Аутентификация Подписи Балансировка
Права доступа Аудит Мониторинг
Сегментация Резервные копии DDoS-защита
Заключение
CIA — одна из основных моделей, используемых для понимания информационной безопасности.
Она состоит из трех ключевых свойств:
Confidentiality — конфиденциальность
Информация должна быть доступна только тем, кому она разрешена.
Integrity — целостность
Информация должна оставаться правильной, полной и защищенной от несанкционированного или некорректного изменения.
Availability — доступность
Авторизованный пользователь должен иметь возможность получить необходимый ресурс тогда, когда он ему нужен.
Эти свойства тесно связаны друг с другом.
Различные угрозы воздействуют на них по-разному:
Перехват трафика
↓
Конфиденциальность
Spoofing / MitM
↓
Конфиденциальность + целостность
Изменение данных
↓
Целостность
DoS / DDoS
↓
Доступность
Некоторые виды вредоносного ПО
↓
Конфиденциальность + целостность + доступность
Для сетевого администратора модель CIA является удобным инструментом, позволяющим анализировать угрозы и выбирать соответствующие меры защиты.
При проектировании сети необходимо задавать три основных вопроса:
Кто должен иметь доступ к информации?
Как защитить информацию от неправильного изменения?
Как обеспечить доступность ресурса для авторизованных пользователей?
Ответы на эти вопросы позволяют построить основу системы информационной безопасности.