Информационная безопасность Модели управления доступом Разграничение доступа Глобальные сети Средства анализа и управления сетями Примеры скриптов на JavaScript Примеры программирования на Java

Информационная безопасность

Пример практического использования:

« все пользователи, кроме пользователя с меткой М4, имеют возможность работы с Web-сервисами и иными службами сети Intranet, предполагающими получение информации из сети. Информация сохраняется в объекта (каталоге) с меткой МЗ, из которого любой пользователь с меньшей меткой по правилам мандатного разграничения может его скопировать в собственный файловый объект, либо в его объект данную информацию может записать (дополнить) пользователь с меткой МЗ. С электронной почтой все пользователи с меткой больше МЗ могут работать только на прием сообщений из сети;

» только пользователь с меткой получает право на отправку электронных почтовых сообщений, что определяется меткой виртуального канала;

для отправки сообщений пользователями с меньшей, чем МЗ, меткой (что возможно только через пользователя с меткой МЗ, и не может быть осуществлено автоматически — не позволит мандатный механизм управления доступа пользователей к файловым объектам) должны быть реализованы организационные мероприятия с привлечением ответственного лица либо службы безопасности.

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

Задача 3 (общий случай).

Подключение защищаемого компьютера к сети Internet и Intranet

Пусть требуется подключить к сети Internet (открытый виртуальный канал связи) и к сети Intranet (корпоративный виртуальный канал связи) защищаемый компьютер, характеризуемый обработкой информации различных уровней конфиденциальности. Таким образом, задача 3 является комбинацией задач 1 и 2).

При тех же предположениях, что и для предыдущих включим в

систему два процесса: один для передачи по сети Intranet служебной информации -- процесс 1 с меткой МЗ (метка исполняемого файла процесса 1 — МЗ), ограничим доступ данного процесса к сетевым ресурсам Intranet по IP адресам и TCP портам; и процесс 2 для передачи по сети Internet открытой информации — с меткой М4 (метка исполняемого файла процесса 1 -- М4).

Получаем совокупность свойств, представленную при решении задач 1 и 2. Достоинства:

один компьютер, в котором обрабатывается информация различных уровней конфиденциальности, одновременно может быть подключен к виртуальным каналам, предназначенным для передачи информации различных уровней конфиденциальности (в частности, к сети Internet и Intranet); за счет назначения меток безопасности процессам (сетевым службам), характеризующим виртуальный канал, в системе может быть реализовано мандатное управления доступом к виртуальным каналам связи;

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

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

Назначить метку безопасности процессу. Эта метка задается меткой безопасности той информации, для передачи которой он предназначен (такая же).

Назначить метку безопасности исполняемому файлу процесса для его запуска пользователем. Эта метка задается меткой безопасности, назначенной процессу (такая же).

При необходимости, следует разграничить права доступа процесса к сетевым ресурсам (в рамках реализации виртуального канала) - по IP адресам и TCP портам.

Проверка подлинности ключей

Как Иванову убедиться в том, что полученные им ключи были действительно переданы Петровым, а не противником, который притворился Петровым? Если Петров отдает ключи Иванову с глазу на глаз, то сделать это довольно легко. Однако если Петров присылает ключи с курьером, то Иванову придется положиться на честность курьера. А если полученные Ивановым ключи зашифрованы с помощью ключа шифрования ключей, ему остается лишь надеяться, что этот ключ имеется только у Петрова. Наконец, если рассылку ключей производит ЦРК, Иванов должен убедиться в надежности процедур рассылки, которые приняты в ЦРК.

Если противник полностью контролирует все каналы связи, которыми пользуется Иванов, он может заставить поверить Иванова во что угодно. Противник может прислать ему фальшивый ключ шифрования ключей якобы от Петрова и затем передавать Иванову поддельные ключи шифрования данных, зашифрованные на этом ключе. Противник будет в состоянии обзавестись собственным ЦРК и слать Иванову ключи от имени подлинного ЦРК. И ничего не подозревающий Иванов станет шифровать свои сообщения с помощью ключей, известных противнику.

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

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

Зная голос Петрова, Иванов может проверить подлинность полученного ключа по телефону. Если это открытый ключ, то его можно просто продиктовать. Если это секретный ключ, то его можно подвергнуть преобразованию с помощью однонаправленной хэш-функции и передать по телефону полученное значение для сравнения с аналогичным значением, подсчитанным на другом конце провода.

Нередко бывает, что Иванов желает убедиться: переданный ему ключ не только является подлинным, но и не был искажен при передаче. Ведь в результате Иванов может оказаться не в состоянии прочесть многие мегабайты шифртекста. Если соответствующий открытый текст был ASCII-файлом, то можно проверить ключ, попытавшись расшифровать с его помощью шифртекст, и получив абракадабру вместо осмысленного текста, сделать вывод о том, что ключ был передан с искажениями. Если открытый текст является достаточно случайным, можно прибегнуть к другим методам проверки ключа.

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

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

Общие принципы построения вычислительных сетей