На современном этапе развития АСУ все большее значение приобретает защита информации, что связано, главным образом, с увеличением объемов данных, к которым одновременно обращается для решения различных задач большое число пользователей.
Это приводит к повышению уязвимости информации, под которой понимают возможность ее несанкционированного использования, искажения или уничтожения в результате доступа пользователей, не обладающих специальными полномочиями, к конфиденциальным сведениям. Для уменьшения вероятности несанкционированного использования информации разрабатывают специальные механизмы ее защиты.
Серийно выпускаемая вычислительная техника имеет некоторые встроенные аппаратные и программные средства защиты. Так, например, многие ЭВМ оснащают специальными аппаратными средствами, позволяющими изолировать пользователей друг от друга и от операционной системы, что обеспечивает возможность эффективного контроля операций по выборке и посылке на хранение данных и уменьшает возможность несанкционированного доступа.
Предусматривают специальные средства центрального процессора для обеспечения безопасности информации, в том числе программно-читаемые часы для регистрации времени свершения тех или иных событий; программно-читаемый закрепленный в памяти аппаратными средствами код идентификации, различный для каждого центрального процессора; инструкции по очистке блока памяти внесением нулей; использование только специфицированных кодов операций и т.п.
Чтобы не допустить искажения или потери информации, предусмотрена система защиты памяти при записи и считывании информации.
Наиболее важной является защита при записи, однако в отдельных случаях необходимо знать, какая программа сделала попытку считать данныеили исполнить команду из запрещенной для нее зоны. Попытка нарушить защиту памяти вызывает прерывание программы-нарушителя. Обычно используют несколько способов организации защиты памяти. Часто встречается защита двумя регистрами, называемыми граничными или регистрами защиты и содержащими номера нижнего и верхнего граничных блоков сегмента.
При появлении команды записи по некоторому адресу он последовательно сравнивается с граничными регистрами. Если требуемый адрес находится за пределами сегмента, указанного нижним и верхним регистрами, то возникает прерывание и после установления его причины управление передается специальной программе, обрабатывающей нарушения защиты памяти.
Установку значений указанных регистров при работе ЭВМ в режиме разделения времени провопит специальная управляющая программа-супервизор.
Аналогично функционирует система защиты с тремя регистрами. Третий регистр устанавливает, распространяется ли защита на внутреннюю область, определяемую верхним и нижним регистрами (состояние 0), или внешнюю (состояние 1).
В настоящее время развивается тенденция хранить программы в оперативной памяти не целиком, а составленными из отдельных сегментов. Для защиты этих сегментов можно использовать несколько пар регистров защиты, подобных описанным выше.
Однако с ростом числа регистров растет число выполняемых логических операций, что усложняет схемную реализацию механизма защиты и может вызвать существенное снижение быстродействия ЭВМ.
Достаточно широко используют метод защиты оперативной памяти по ключу. Память разбивают на блоки, каждому из которых ставится в соответствие некоторый ключ.
Условия выполнения программы запоминаются в слове памяти, называемом словом состояния программы. Супервизор помещает в это слово ключ защиты программы. Кроме того, в это же слово записывают первые позиции ключей каждого блока памяти, используемых текущей программой.
При появлении адреса из некоторого блока памяти сравнивается ключ защиты в слове состояния программы и первые разряды ключа этого блока памяти. Несовпадение свидетельствует о попытке нарушения защиты и вызывает прерывание.
В системах, работающих в режиме разделения времени, функции защиты возлагают на трансляторы, что накладывает определенные ограничения на языки программирования, так как трансляторы должны до исполнения программ осуществить контроль.
Этот метод часто используют для работы с языками, близкими к естественным. В этом случае символическим идентификаторам соответствует определенный адрес памяти (ячейка памяти, например, получившая обозначение А, всегда будет находиться по адресу А' для первого пользователя, по адресу А" для второго и т.д., что упрощает контроль при трансляции).
Несмотря на широкое использование серийных средств защиты данных в ЭВМ, они не обеспечивают надежное перекрытие всех потенциально возможных каналов несанкционированного использования или утечки информации, что диктует необходимость разработки механизмов защиты при проектировании АСУ.
Одна из основных их характеристик - вероятность "взлома", в результате которого будет нарушена безопасность информации, т.е. произойдет либо несанкционированное использование, либо разрушение (искажение или стирание) отдельных элементов или всех данных.
Выбор механизмов защиты определяется особенностями рассматриваемой СОД, критериями синтезируемой системы защиты, используемыми методами защиты, имеющимися ресурсами и т.д. Существующие методы и механизмы защиты включают в себя процедурные, программные и аппаратные способы организации защиты.
Процедурные методы защиты обеспечивают доступ к данным только тем пользователям, которые имеют соответствующие разрешения. Например, для систем с разделением времени процедурные методы защиты должны обеспечивать контроль доступа со стороны пользователей, использующих терминалы ввода–вывода.
Идентификация осуществляется путем проверки паролей терминалов, кодов пользователей, шифров работ и посылки обратного сигнала об их законности.
Реализация процедурных методов защиты обеспечивается установлением паролей для терминалов, грифов секретности данных, созданием организационных и физических ограничений (сейфы, вахтеры, охрана и т д.), а повышение их эффективности достигается путем соответствующего обучения и повышения уровня ответственности персонала.
Ответственность за нарушение безопасности данных при этом возлагается на группу лиц, в обязанности которых входят:
управление доступом к данным;
учет попыток несанкционированного доступа к защищенным данным;
регистрация лиц, имеющих копии данных ограниченного использования;
анализ функционирования системы защиты и повышение качества ее работы;
анализ последствий, вызванных "взломом" системы защиты.
Процедурные методы защиты используют в основном на этапах первичной обработки данных и выдачи результатов обработки пользователям.
Программные и аппаратные методы защиты используют в основном на этапе обработки данных на ЭВМ. Они обеспечивают: обслуживание только "законных" пользователей; доступ к объектам защиты в соответствии с установленными правами и правилами; возможность изменения (модификации) правил взаимодействия между пользователями и объектами защиты; возможность получения -информации о безопасности объектов защиты.
Некоторые программные методы обеспечивают возможность анализа функционирования системы защиты с целью повышения качества ее работы и анализа последствий, вызванных "взломом".
Структура и характеристики аппаратных и программных методов защиты зависят от характеристик процессора и структуры памяти. С точки зрения взаимодействия пользователей в системе защита обеспечивает одну из следующих альтернатив: взаимную изоляцию данных пользователей и наличие библиотеки общего пользования; некоторые данные могут использоваться и (или) изменяться рядом пользователей, что контролируется механизмом защиты; удовлетворение специфических требованийпользователей в доступе к объектам защиты, что обеспечивается программируемыми механизмами защиты.
Упрощенным представлением организации защиты является следующая модель: "Каждый объект защиты окружен непроницаемым барьером с единственным проходом, у которого поставлен охранник".
Функцией охранника является проверка полномочий пользователей, которая осуществляется следующим образом: полномочия пользователя удостоверяются, если совпадает пароль, которым располагает охранник, и пароль, сообщенный пользователем.
Рассмотрим некоторые методы защиты для режима прямого доступа.
1. Помещения, где находятся терминалы, запирают. Доступ к ресурсам вычислительного комплекса имеют пользователи, которые обладают ключами.
2. Доступ к терминалам разрешается в случае предъявления соответствующего пропуска вахтеру.
3. Каждый терминал имеет список пользователей, которым разрешен доступ с этого терминала к ресурсам вычислительного комплекса. Пользователь сообщает системе свой код (пароль), который сверяется со списком. Если пароли совпадают, доступ разрешается.
4. Для каждого пользователя, код которого помещен в список, указывается временной интервал, в течение которого он имеет право обращаться к системе. В этом случае для доступа необходимо знать не только код пользователя, но и разрешенный ему временной интервал.
5. Пользователь начинает работу с терминалом, вводя свое имя "открытым текстом". По каналу связи имя передается в ЭВМ, где в защищенной таблице отыскивается соответствующий засекреченный ключ шифра.
Этот ключ передается шифровальному устройству, входящему в состав ЭВМ, после чего на терминал посылается подтверждение о готовности. Тем временем пользователь вводит этот же ключ в свой терминал. Если ключи совпадают, то сеанс связи продолжается.
6. Если пароль пользователя не может быть сохранен в тайне, он должен быть только однократным.
В этом случае пользователь ведет список паролей, вычеркивая из него уже использованные. В других случаях применяется контроль срока действия или общего числа применений конкретного пароля.