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

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

Реализация механизма обеспечения замкнутости программной среды

Посредством задания списков исполняемых файлов

Данный механизм состоит в задании для каждого пользователя списка процессов (исполняемых файлов), которые ему разрешено запускать. Корректность функционирования механизма связана с предотвращением явных и скрытых каналов модификации списка санкционированных исполняемых файлов, а также запуска исполняемых файлов, не вошедших в список.

При данном походе объект доступа в матрице доступа к исполняемым файлам представляет собой список исполняемых файлов.

Требования к корректности функционирования механизма обеспечения замкнутости программной среды таковы |30|:

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

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

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

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

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

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

Дополнительная терминология

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

По этой причине в ходе дальнейшего изложения о процессах подписания документа и проверки подлинности подписи будет говориться без упоминания конкретных алгоритмов, которые используются для этих целей. Подписание документа Р при помощи тайного ключа К будет обозначаться SK(P), а проверка подлинности подписи р использованием соответствующего открытого ключа — VK(P).

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

Несколько подписей под одним документом

Каким образом Антон и Борис могут поставить свои цифровые подписи под одним и тем же документом? Если не задействовать однонаправленные хэш-функции, существуют 2 способа сделать это.

r Первый заключается в создании двух идентичных копий документа,

одну из которых подписывает Антон, а другую — Борис. Однако тогда придется хранить документ, длина которого в 2 раза превышает размер исходного документа, предназначенного для совместного подписания Антоном и Борисом.

r Второй способ состоит в том, чтобы сначала документ подписал

Антон, а затем подпись Антона заверил своей подписью Борис. Но в этом случае будет невозможно убедиться в подлинности подписи Антона, не проверив подпись Бориса.

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

1. Антон подписывает хэш-значение документа.

2. Борис подписывает хэш-значение того же самого документа.

3. Борис отсылает свою подпись Антону.

4. Антон шлет документ вместе со своей подписью и подписью Бориса

 Владимиру.

5. Владимир проверяет подлинность подписей Антона и Бориса.

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