Защита данных в системе as/400 с сетью персональных машин



Дата06.07.2016
өлшемі2.12 Mb.
#181669
Защита данных в системе AS/400

с сетью персональных машин


М.Д. Бардин, Н.Е.Емельянов, Д.В.Соловьев

Аннотация. Электронно-вычислительная машина AS/400 со своей операционной системой славится системой защиты данных. В ряде работ отмечается, что еще ни разу никто не смог ее взломать. Сети персональных компьютеров с операционными системами Windows (и в особенности MS DOS) знамениты, напротив, своей полной незащищенностью. В то же время многие организации для пользовательских рабочих мест уже прочно и основательно сделали выбор в пользу системы Windows (и даже не OS/2 - более «родной» для AS/400). В статье рассматривается подход, обеспечивающий в такой гетерогенной системе защиту данных на уровне не ниже С2.
1. Введение.
Система AS/400 предназначена специально для работы с базами данных большого количества пользователей с различными правами доступа [1,2]. Существует много прикладных пакетов, которые обеспечивают работу пользователей в терминальном режиме. При этом достигаются высокий уровень защиты от несанкционированного доступа (НСД) и высокая производительность, поскольку система работает своими собственными средствами, наиболее адаптированными к структурам данных, имеющимся на AS/400. Однако это не позволяет использовать графический интерфейс и гибкость клиент-серверной архитектуры.

Существует также много клиент-серверных приложений, однако в большинстве своем они используют AS/400 как SQL-сервер, в результате чего не удается использовать все преимущества архитектуры AS/400, в частности, надежной защиты от НСД.

Ключевым понятием операционной системы AS/400 является объект. Объектами являются программы, файлы, каталоги, устройства и др. Разграничение прав доступа производится на уровне объектов. Объект определяется именем, библиотекой(каталогом) и типом. Тип объекта определяет операции, возможные над ним. В частности, невозможно писать в программу и невозможно исполнять файл данных. Один из типов объектов - очереди данных. К такой очереди могут обращаться сразу несколько процессов. В очередь можно писать, из очереди можно читать. Возможно читать либо первое сообщение из очереди, либо последнее, либо с требуемым значением ключа. К очередям данных обращение происходит быстрее, чем к файлам, и они специально созданы для работы со многими процессами. К очередям возможно обращение из PC.

При создании пакета электронного архива документов Евфрат-400 была реализована концепция, учитывающая как преимущества системы AS/400, так и преимущества клиент - серверной архитектуры. В качестве клиентских рабочих станций используются PC с графическим интерфейсом Windows95. В качестве сервера используется AS/400 с постоянно запущенными серверными процессами.

В статье на примере пакета Евфрат-400 рассматривается организация защиты данных в гетерогенной среде AS/400 и персональных компьютеров Windows 95 и Windows NT. В разделе 2 описывается классификация уровней защиты С1 и С2, в разделах 3 и 4 описываются возможности, предоставляемые AS/400, в разделах 5 и 6 - новые возможности, разработанные авторами.

2. Уровни защиты.

В книге [3] определяются четыре уровня безопасности - D, C, B, A в порядке повышения требований к надежности. Уровни C и B подразделяются на классы C1,C2, B1, B2, B3, таким образом, вместе с D1 и A1 имеется всего семь классов безопасности.

Рассмотрим класс С2. Он характеризуется следующими требованиями [3,4].

Система должна управлять доступом именованных пользователей к именованным объектам. Механизм управления должен позволять специфицировать разделение объектов между пользователями и/или группами пользователей (класс С1). Права доступа должны различаться с точность до пользователя. Только авторизированный пользователь может предоставлять права доступа другим пользователям. Все объекты должны подвергаться контролю доступа (класс С2). При удалении хранимого объекта из пула ресурсов необходимо ликвидировать все следы использования.

Пользователи должны идентифицировать и аутентифицировать себя, прежде чем выполнять какие-либо действия. Информация об аутентификации должна быть защищена от несанкционированного доступа (класс С1). Каждый пользователь системы должен идентифицироваться уникально. Каждое регистрируемое действие должно быть отнесено к конкретному пользователю. Должны регистрироваться следующие события:


  • идентификация и аутентификация,

  • внесение объекта в адресное пространство пользователя, например, открытие файла, запуск программы,

  • удаление объектов,

  • действия системных операторов, системных администраторов, администраторов безопасности,

  • другие события, затрагивающие информационную безопасность.

Регистрация каждого события должна содержать следующие поля:

  • дата и время события,

  • идентификатор пользователя,

  • тип события,

  • результат действия.

Для событий идентификация и аутентификация регистрируются также идентификатор устройства, например компьютер по сетевой карте. Для действий с объектами регистрируются имена объектов.

Системный администратор может выбирать набор регистрируемых событий для каждого пользователя (класс С2).

В системе должны быть аппаратные и/или программные средства, позволяющие проверять корректность функционирования системы (класс С1).

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

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

Отдельный фрагмент документации должен описывать защитные функции и их взаимодействие (класс С1).

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

Разработчик системы должен представить документ, содержащий план тестов, процедуры прогона тестов и их результаты.

Должен быть описан подход к обеспечению безопасности, используемый разработчиком, и применение этого подхода при реализации системы (класс С1).
3. Трехмерная матрица защиты.
Распределение прав пользователей на доступ к информации, возможность запуска процедур, использование устройств в зависимости должностных полномочий пользователей на AS/400 осуществляется с помощью трехмерной матрицы прав доступа и механизма авторизации. Объем матрицы прав доступа (см. Рис.1) определяется количеством объектов в прикладной системе (программ, баз данных, файлов, очередей и др.) - первое измерение, количеством пользователей (персональных и групповых) - второе измерение и вектором полномочий - допустимых функций (создание, копирование, удаление, исполнение, чтение, запись, обновление, перемещение, право взять указатель на объект и др.) - третье измерение. Элементом матрицы является конкретная спецификация, которая определяет для конкретных объекта и пользователя возможность выполнения конкретной функции. Спецификации матрицы прав доступа задаются специальными командами AS/400.

Для того, чтобы получить доступ к объекту системы (программе, базе данных, файлу), пользователь должен быть авторизован для этого объекта. Неавторизованный пользователь не может запустить программу, работать с базой данных, открыть файл и т.п. Очевидно, что уже в средних приложениях число таких спецификаций превышает сотни тысяч. Для наглядной и производительной работы по заданию спецификаций в AS/400 используются групповые операции. Можно описать для определенного объекта кто и какие права на него имеет, такой срез матрицы называется авторизационным листом (см. Рис. 2). Затем описание прав доступа к другим объектам можно определить при помощи одного или нескольких авторизационных листов (Authorization list). Можно описать в соответствие с выполняемыми функциями группу пользователей (Gr.Pr.) - срез матрицы по другому измерению и затем конкретных пользователей вводить в систему, указывая лишь соответствующую группу пользователей (см. Рис. 3).


Управление авторизацией пользователей осуществляет администратор системы с помощью команды CHGAUT, вводимой с консоли AS/400. Для любого объекта системы эта команда позволяет определить, кто и какие именно права имеет на этот объект. Авторизация может быть установлена для конкретного пользователя по его идентификатору (User ID), для групп пользователей по их групповому профайлу (Group profile), для всех остальных пользователей (*PUBLIC), авторизация которых не установлена явным образом, а также через списки авторизации (Authorization list).
Как часто бывает в программировании компактное описания спецификаций защиты это не только экономия времени. Если удалось найти подход к заметному сокращению объема спецификаций, то это означает скорее всего правильно найденную методологию, выявление каких-то важных сущностей. Действительно авторизационные листы и профайлы это важные методологические средства, а не только средства сокращения работы.

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

Проектирование системы защиты для конкретного приложения удобно производить, сделав проекцию операций на плоскость пользователи-объекты. В клетках этой двухмерной матрицы список полномочий. Нельзя сделать хорошую защиту без составления такой матрицы - это удобный рабочий инструмент. Проектирование защиты хорошо начинать с составления такой матрицы (см. Рис. ??).

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


Команда CHGAUT имеет следующие параметры:

OBJ - имя объекта, для которого устанавливается авторизация;

USER - идентификатор пользователя (пользователей);

DTAAUT - права на данные;

OBJAUT - права на объект;

AUTL - имя списка авторизации.

Параметры перечисляются через пробел, значения параметров указываются в скобках, например, CHGAUT OBJ('QSYS.LIB/EUPHRAT.LIB/SEARCH.PGM') USER(SIDOROV) DTAAUT(*EXCLUDE) OBJAUT(*NONE).

Параметр OBJ должен указывать системное имя существующего объекта в соответствии с принятыми в OS/400 правилами именования объектов (включая имя библиотеки или каталога, в котором объект находится).

Параметр USER должен определять идентификатор пользователя (User ID), или список нескольких (до пятидесяти) идентификаторов пользователей, для которых устанавливается авторизация. Этот параметр может иметь специальное значение *PUBLIC, означающее всех пользователей, авторизация которых не определена явно.

Параметр DTAAUT может иметь следующие значения:

*SAME - права на данные сохраняются без изменения;

*NONE - пользователь не имеет прав на данные;

*RWX - пользователь имеет право выполнять с данными любые действия, кроме тех, которые ограничиваются правами на тип данного объект;

*RX - пользователь имеет право использовать данные (запускать программу, читать файл), но не может изменять их;

*RW - пользователь имеет право просматривать и изменять данные;

*WX - пользователь имеет право изменять данные и запускать программу;

*R - пользователь имеет право только просматривать данные;

*W - пользователь имеет право только изменять данные;

*X - пользователь имеет право запускать программу;

*EXCLUDE - пользователь не имеет доступа к данным;

*AUTL - (разрешен только для пользователя *PUBLIC) - права на данные определяются списком авторизации.

Параметр OBJAUT может иметь следующие значения:

*SAME - права на объект сохраняются без изменения;

*NONE - пользователь не имеет прав на объект;

*ALL - пользователь имеет все права на объект - уничтожение,

изменение, управление, и права на указатель объекта;

*OBJEXIST - пользователь имеет право на уничтожение объекта;

*OBJMGT - пользователь имеет право на управление объектом (MOVE, RENAME);

*OBJALTER - пользователь имеет право изменять атрибуты объекта;

*OBJREF - пользователь имеет право на указатель объекта.

Параметр AUTL должен указывать имя существующего списка авторизации, определяющего права доступа к объекту.
4. Режимы назначения и смены паролей
Пользователь до начала работы должен быть зарегистрирован в системе и авторизован. Для входа в систему он указывает свое имя (идентификатор) и пароль. Имена пользователей вводят администратор прикладной системы и/или администратор безопасности. Пароль пользователь назначает себе сам, пароль хранится в системе и недоступен ни администратору приложения, ни администратору безопасности. Администратор безопасности может ввести определенные правила назначения паролей с целью большей защищенности системы. В частности действует общее правило - пароль должен быть отличен от имени пользователя. В экстренных случаях, когда есть подозрения на раскрытие пароля и несанкционированный доступ, администратор безопасности может заменить пароль пользователю, не зная его текущего пароля.
Защита данных от несанкционированного доступа определяется выбранной стратегией безопасности и настройкой системы в соответствии с этой стратегией. Характеристики парольной защиты, лежащей в основе прав доступа пользователей к информации, настраиваются с помощью специальных системных переменных, позволяющих управлять различными свойствами паролей.

Изменение значений системных переменных, перечисленных ниже, выполняется с консоли AS/400 командой WRKSYSVAL параметр, где параметр – имя системной переменной. Полный перечень системных переменных и их начальные значения определяются операционной системой OS/400 и описаны в книге «OS/400 Security Reference V3R7» (документ SC41-3302-01).


Переменная «срок действия пароля - QPWDEXPITV». Определяет количество дней, в течение которых действует пароль. Она обеспечивает защиту доступа по паролю, требуя от пользователей регулярного изменения их паролей по прошествии установленного срока. Если пароль не был изменен по прошествии установленного срока, то пользователь не сможет получить доступ к Системе до тех пор, пока пароль не будет изменен. За 7 дней до окончания срока действия система выдает предупреждение об этом.

Ограничение на рядом стоящие в пароле цифры - QPWDLMTAJC. Устанавливается допустимость соседних цифр в пароле. Это затрудняет возможность подобрать пароли, не допуская использования дат или широко распространенных комбинаций чисел в качестве пароля.

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

Ограничение на повтор символов в пароле - QPWDLMTREP. Запрещает пользователю использование одного и того же символа в пароле более чем один раз (например, АААА). При значении переменной 0 - символы могут быть использованы более чем 1 раз; 1 - символы не могут быть использованы более чем 1 раз; 2 - символы не могут следовать подряд.

Ограничение на максимальную длину пароля - QPWDMAXLEN. Число от 1 до 10 - задает максимальное количество символов в пароле. Максимальная длина пароля не должна быть меньше, чем минимальная длина пароля, установленная в системной переменной QPWDMINLEN.

Ограничение на минимальную длину пароля - QPWDMINLEN. Число от 1 до 10 - задает минимальное количество символов в пароле. Минимальная длина пароля не должна быть больше, чем максимальная длина пароля, установленная в системной переменной QPWDMAXLEN.

Ограничение на позицию символа в пароле - QPWDPOSDIF. Эта системная переменная управляет позицией символов в новом пароле. Она запрещает пользователю использовать одни и те же символы на одном и том же месте в новом и старом пароле. Например, новый пароль DJS2 не может быть использован, если старый пароль был DJS1 (т.к. D, J и S расположены на тех же местах, что и в старом пароле).

При значении переменной 0 - те же символы можно использовать в новом пароле на тех же позициях, что и в старом пароле; 1 - те же символы не могут быть использованы в новом пароле на тех же позициях, что и в старом пароле.

Использование цифр в пароле - QPWDRQDDGT. Эта системная переменная управляет использованием цифр в новом пароле. Она запрещает пользователю использовать в пароле только буквы алфавита. При значении переменной 0 - цифры не требуются; 1 - требуется одна или более цифр.

Ограничения на повторение пароля - QPWDRQDDIF. Эта системная переменная ограничивает частоту, с которой пользователь может повторять один и тот же пароль. При значении переменной 0 - пароль может быть таким же, как и предыдущий. При значениях 1-8 должен отличаться соответственно от 32, 24, 18, 12, 10, 8, 6, 4 предыдущих;

Имя программы проверки пароля - QPWDVLDPGM. Эта системная переменная обеспечивает возможность автору приложения подключить дополнительную программу проверки правил заведения пароля.
5. Построение единой системы паролей для AS/400 и PC
Разграничение прав доступа описывается при создании групп пользователей (профайлов). Окончательная регистрация пользователей осуществляется администратором системы с помощью программы ADMIN, работающей на персональном компьютере в сети персональных компьютеров и AS/400. Для того, чтобы сделать профайлы доступными для программы ADMIN разработан набор операций, выполняемых на AS/400, которые облегчают описание авторизационных листов и профайлов и в то же время отображают профайлы в области, доступной персональным компьютерам.

При работе в сети персональных компьтеров у матрицы доступа появляется 4-е измерение -- персональные компьютеры, с которых можно данному пользователю над данным объектом выполнять те или иные операции.




В окне программы ADMIN следует по закладке «Список пользователей» имеются список ранее зарегистрированных пользователей, и кнопки «Новый», «Удалить», «Привязка», «Смена пароля».




Нажатие кнопки «Новый» открывает диалоговое окно, в котором указывается следующая информация о впервые регистрируемом пользователе: имя, пароль (вводится дважды для контроля правильности ввода), уровень защиты (целое число от 0 до 4), группа пользователей (выбирается из списка заранее определенных групп). Принадлежность пользователя к конкретной группе определяет его права на доступ к различным документам и следует из его задач. Нажатие кнопки «Записать» в этом окне осуществляет регистрацию пользователя с заданными характеристиками. В матрице прав доступа AS/400 создается новый пользователь соответствующей группы пользователей.







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

Выбрав в этом списке имя компьютера и нажав кнопку «Убрать», администратор запрещает данному пользователю входить в систему с данного рабочего места. Имя этого компьютера удаляется из списка «Компьютеры пользователя». Нажатие кнопки «OK» в этом окне фиксирует выбранную настройку.




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

Программа JOURNAL запускается на персональном компьютере администратора безопасности двойным нажатием левой кнопки мыши на иконке с надписью «Журнал безопасности».




6. Защита наиболее ценных данных
Для обеспечения работы с данными только через систему необходимо закрыть возможность любой другой работы, например через Norton Comander. Для этого используются следующие две технологии (см. Рис. 4 и 5). По первой технологии (Рис. 4) сервер базы данных закрыт для обращений всех пользователей, кроме пользователя сервера приложения, обращение к которому возможно только из программы. С терминала, а так же из любого приложения, где спрашивается пароль для входа в Client Access, его запустить нельзя, например из FTP и т.п.

Замечательным качеством AS/400 является то, что пользователем можно сделать не только настоящего usera идентифицированного по имени входа в Client Access, но и программу, которая выполняется на AS/400 и запускается при старте системы. Это дает богатые возможности организации дополнительных уровней защиты.

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

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

При таком подходе на поиск в базе данных задействован только процессор AS/400, который лучше приспособлен к подобным операциям. Поиск реализован на уровне доступа к записям, что позволяет увеличить быстродействие. Существенно, что клиенту необходим только доступ к очередям; ни к программам, ни к базе данных он доступа не имеет, что позволяет лучше застраховаться от несанкционированных действий.
7. Заключение
А. Саймон в работе [5] пишет: «Так каково же нынешнее положение дел с безопасностью баз данных? Хотя в этой области немало было сделано за последние годы, ... однако факт остается фактом - коммерческие реализации все еще значительно отстают от исследовательских результатов ... средства безопасности баз данных, несомненно, будут активно развиваться, просто в силу необходимости. Промышленный шпионаж постоянно усиливается, и защита корпоративной информации становится все более настоятельной потребностью. Необходимо четко представлять себе две вещи: во-первых, то, что средства безопасности, имеющиеся сегодня в коммерческих СУБД, ни в коей мере не отвечают потребностям обеспечения реальной защиты; во-вторых, то, что безопасность - это комплексная проблема, охватывающая не только работу баз данных и информационных менеджеров, но и функционирование сети, операционных систем и других компонентов среды.»

Подход к защите данных, рассмотренный в данной статье, применялся, в частности, для разработки Электронного архива документов, построенного на основе СУБД DB2 (см. статью в данном сборнике [6] ). Службой безопасности были выдвинуты жесткие требования на разграничение доступа. Общее главное требование состояло в том, чтобы данные видны были только через систему Электронного архива. С рабочего места сканирования можно только поместить на AS/400 во временный каталог очередную порцию документов. Верификатор может только просматривать документы текущего дня и переносить их из временного каталога в постоянное хранилище. С рабочих мест поиска можно только искать документы причем только определенных типов в зависимости от группы пользователей, к которой отнесено то или иное рабочее место поиска. В реализации применялись технологии первая и вторая, описанные выше. Так перепись папок документов каталогов AS/400 из временного хранения в постоянное реализовано по первой технологии (см. рис. 4), а поиск документов построен по второй технологии (см. рис. 5). Применение этих технологий обеспечило также хорошие временные характеристики верификации, индексации и поиска (см. [6 ]).

Опыт анализа аварий в сети персональных компьютеров с AS/400 показывает, что может потеряться все, что хранилось на персональных компьютерах, в AS/400 остается незатронутой. Расположение всей важной информации на AS/400 заметно повышает надежность. Применяя описанный в статье подход, удалось построить систему с защитой, выполняющей все требования уровня защиты С2, а по ряду показателей превышающих его.
Литература
[1]. Soltis F. Inside the AS/400// Duke Press, Loveland, Colorado, 1996, 360 p.

[2]. А.Перевозщиков материалы фирмы IBM

[3]. Department of Defense Trusted Computer System Evaluation Criteria. - DoD 5200.28-STD,1993.

«OS/400 Security Reference V3R7» (документ SC41-3302-01)

[4]. Галатенко В.А. Информационная безопасность - основы// СУБД, N1, 1996, с. 6 - 28

[5]. Simon A. Strategic Database Technology: Management For The Year 2000// Morgan Kaufman Publishers, Inc (цитировано по ж. СУБД N1, 1997, с. 78 - 95)



[6]. Акимова Г.П., Деза В.Н., Емельянов Н.Е., Порай Д.С. Об одном подходе к согласованному ведению фактографических баз данных и баз изображений// Статья в данном сборнике

Cognitive Technologies, Ltd. Москва, 1997 /


Достарыңызбен бөлісу:




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет