Программа защиты объектов операционной системы Windows95, работающей в многопользовательском режиме под управлением сервера Novell NetWare

Министерство  образования Российской Федерации

МАТИ - Российский Государственный Технологический Университет

  им. К.Э.Циолковского

Кафедра "Информационные технологии"

Рецензент ______________

Зав.кафедрой Авдошин С.М

"___" июня 2000 г

"___" июня 2000г.

Выпускная квалификационная работа бакалавра

по направлению информатика и вычислительная техника

ТЕМА: ПРОГРАММА ЗАЩИТЫ ОБЬЕКТОВ ОПЕРАЦИОННОЙ СИСТЕМЫ WINDOWS95, РАБОТАЮЩЕЙ В МнОГОПОЛЬЗОВАТЕЛЬСКОМ РЕЖИМЕ ПОД УПРАВЛЕНИЕМ СЕРВЕРА Novell NetWare (Windows NT, Unix)

Студент

Лицентов Д. Б.

(______________)

Руководитель

Еремеева Т. Ю.

(______________)

Консультант

Каретников А. А.

(______________)

2000 г.

АННОТАЦИЯ

Данная выпускная работа посвящена вопросам разработки программы защиты объектов операционной системы WINDOWS95 работающей в многопользовательском режиме под управлением сервера Novell NetWare (Windows NT, Unix). Однако имеющиеся на сегодняшний день большое количество подобных программ ставит перед человеком, проводящим защиту ОС  Windows 95, не тривиальную задачу – ввести большое количество данных при интуитивно не понятном и сложном интерфейсе, не позволяющем быстро и точно защитить требующиеся объекты.  Указываются достоинства и недостатки существующих программных продуктов, позволяющих производить защиту объектов операционной системы WINDOWS95. Указываются пути дальнейшего расширения возможностей программы.

Министерство  образования Российской Федерации

МАТИ - Российский Государственный Технологический Университет

  им. К.Э.Циолковского

Утверждаю:

Зав. кафедрой ИТ

__________________С.М.Авдошин

"___"__________________2000 г.

ПРОГРАММА ЗАЩИТЫ ОБЬЕКТОВ ОПЕРАЦИОННОЙ СИСТЕМЫ WINDOWS95, РАБОТАЮЩЕЙ В МнОГОПОЛЬЗОВАТЕЛЬСКОМ РЕЖИМЕ ПОД УПРАВЛЕНИЕМ СЕРВЕРА Novell NetWare (Windows NT, Unix)

пояснительная записка

02609–01 51 01

Листов __

СОГЛАСОВАНО

Консультант по специальной части

__________________/Каретников А.А./

«____»   ___________________  2000 г.

Руководитель дипломного проекта

_________________/Еремеева Т. Ю./

«____»   ___________________  2000 г.

Норм контроль

__________________/Авдошин С.М./

«____»   ___________________  2000 г.

Задание принял к исполнению студент группы 3ИТ4-26

__________________/Лицентов Д.Б./

«____»   ___________________  2000 г.

Москва 2000 г. СОДЕРЖАНИЕ

1.      Введение ……………………………………………………………………………….5

2.      Специальная часть ………………………………………………………………6

2.1.   Постановка задачи ………………………………………………………………….6

2.2.   Обзор существующих решений …………………………………………………...7

2.3.   Описание алгоритма …………………………………………………………….…11

2.4.   Организация данных и диалога ……………………………………………….….12

2.4.1.      Организация данных ………………………………………………………..12

2.4.2.      Организация диалога ………………………………………………….…….14

2.5.   Состав технических и программных средств …………………………………...17

2.5.1.      Технические средства ……………………………………………………….17

2.5.2.      Аппаратные средства ………………………………………………………..17

2.5.3.      Программные средства ……………………………………………………...18

2.6.   Технология разработки программного продукта ……………………………….19

2.6.1.      Выбор программной среды ………………………………………………….19

2.6.2.      Технологический процесс разработки программы ………………………21

2.6.3.      Разработка технологического процесса отладки …………………………21

2.6.4.      Фрагмент отладки программы ...……………………………………………22

2.6.5.      Формальное описание ПОЯ языка …………………………………………23

2.7.   Результаты работы программы и их оценки …………………………………….24

3.      Заключение …………………………………………………………………………...24

4.      Список используемой литературы ……………………………………….25

5.      перечень сокращений …………………………………………………………...25

6.      Приложение ………………..………………..………………..………………..……...26

6.1.   Презентация ………………..………………..………………..……………………….26

Введение

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

Настоящая работа посвящена разработке программы защиты объектов операционной системы WINDOWS95 работающей в многопользовательском режиме под управлением сервера Novell NetWare (Windows NT, Unix), позволяющей проводить защиту объектов ОС на уровне пользователя.

Под защитой объектов ОС Windows 95 подразумевается ограничение доступа к системным настройкам ОС на уровне пользователя.

Благодаря данной разработке программе не надо подходить к каждой рабочей станции и устанавливать там ограничения. Достаточно определить ограничения на одной рабочей станции и сохранить файл настроек на сервер. Следует также заметить следующий важный момент - при использование разработанного программного продукта для установки ограничений на доступ к объектам ОС Windows95, все ограничения остаются в локальной БД Registry. Даже при отключении рабочей станции от локальной вычислительно сети все изменения, внесенные до момента отключения рабочей станции от ЛВС, останутся в силе. Так, как файлы реестра являются бинарными файлами, редактирование их вручную сильно затруднено, что очень сильно осложняет проникновение в локальную систему ОС Windows 95. Изменения останутся в силе так же и при отключение сервера или повреждение (потери) файла бинарных настроек.

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

 

2. специальная часть

2.1. ПОСТАНОВКА ЗАДАЧИ

Разработать программу, для автоматической настройки защиты объектов ОС Windows 95, от несанкционированного доступа пользователя.

Полученная программа должна удовлетворять следующим внешним спецификациям:

Входные данные

§  Список пользователей домена (находиться на сервере Novell NetWare в файле NET$OBJ.SYS; NET$PROP.SYS; NET$VAL.SYS [2], Windows NT в реестре систеемы [1], Unix в файле /etc/passwd [4])

§  Список рабочих групп домена (находиться на сервере Novell NetWare в файле NET$OBJ.SYS; NET$PROP.SYS; NET$VAL.SYS [2], Windows NT в реестре системы [1], Unix в файле /ect/group [3])

§  Список рабочих станций (Вводятся пользователем или выбираются из предлагаемого списка. В списке отображаются только рабочие станции, которые в данный момент присутствуют в ЛВС)

§  Значения идентификатора доступа к объектам операционной системы Windows 95 (разрешен доступ данному пользователю или нет).

Выходные данные: бинарный файл настроек ОС Windows 95 – config.pol

2.2. Обзор Существующих решений

На сегодняшний день существует много различных программ защиты объектов ОС Windows 95, но все они обладаю рядом недостатков, которые мешают использованию этих программ в университете или на производстве.

 Одна из наиболее удачных систем – TWecl. Она позволяет ограничить доступ к объектам операционной системы ОС Windows 9x. Эта программа ограничивает доступ к объектам ОС Windows 95 путем изменения уже существующих ключей реестра. С помощью этой программы можно изменять доступ к следующим объектам ОС:

§  Настройка сети

§  Настройка параметров загрузки ОС

§  Количество «видимых» пользователем дисков

§  Доступ на изменение пароля ОС

§  Задать список разрешенных программ (только 10 программ)

§  Разрешение создания конфигураций для пользователей

§  Выбор схемы входа в сеть

§  Выбор сообщения перед входом в домен

§  Задать тип сервера и адрес (контролера домена)

§  Указать имя рабочей группы

§  Ограничить доступ к «Панели управления»

§  Скрыть вкладку диспетчера устройств

§  Скрыть вкладку конфигураций оборудования

§  Скрыть кнопку 'Файловая система'

§  Скрыть кнопку 'Виртуальная память'

§  Заблокировать возможность настройки защиты

§  Скрыть вкладку удаленного управления

§  Скрыть вкладку конфигураций

§  Скрыть кнопки организации доступа к файлам

§  Скрыть кнопки организации доступа к принтерам

§  Запретить запуск программ MS-DOS в монопольном режиме

§  Обозначить программы запускаемые при запуске

Эта программная разработка имеет ряд недостатков, которые делают её использование невозможной в процессе обучения абитуриентов.

 Данный программный продукт  был разработан с помощью языка высокого уровня VisualC++, что дает данному продукту высокую скорость работы, но не дает программе быть хоть как-то расширенной или дополненной. Так же, надо заметить, что скорость вступления в силу, некоторых изменений требует достаточно продолжительного времени (до 5 минут на машине Intel Pentium 200 RAM 64). Что неприемлемо для использования в учебном процессе.

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

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

Поскольку все настройки, произведенные данной программой, хранятся непосредственно в реестре на локальной станции, то они могут быть изменены с помощью редактора реестра и изменение будут оставаться в системе до тех пор, пока администратор ЛВС заново не восстановит параметры защиты системы.

 

Еще одна удачная разработка: AccessForbiten4.1. Эта программа позволяет запускать только разрешенные приложения ОС Winodws 9x. С помощью этой программы можно ограничить число запускаемы программ на рабочей станции.

Эта программа позволяет:

§  Перечислить приложения, которые разрешено запускать пользователю

§  Запретить запуск не перечисленных приложений

Данный программный продукт  был разработан с помощью языка высокого уровня C++, что дает данному продукту высокую скорость работы, но не дает программе быть хоть как-то расширенной или дополненной.

 Недостаток этой программы в её ограничение: разращенных программ может быть не более 10. Этот программный комплекс не подлежит расширению.

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

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

К удачным разработкам можно также отнести программу PC Deadbolt 1.0. Этот программный продукт представляет из себя закрытую систему не подлежащую модифицированию или расширению без перекомпиляции основного кода с использованием специальных библиотек разработчика.

Данный программный продукт  был разработан с помощью языка высокого уровня Delphi, что дает этой программе прекрасный интерфейс и не высокую скорость работы. Ещё раз хочется отметить что программа не моет быть хоть как-то расширенной или дополненной. Так же, надо заметить, что скорость вступления в силу, некоторых изменений требует достаточно продолжительного времени (до 5 минут на машине Intel Pentium 166 RAM 32). Что неприемлемо для использования в учебном процессе.

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

Нельзя не отметить ещё одну программу regedit версия 1.01. Эта программа входит в стандартную поставку ОС Windows. Эта программа объединяет возможности всех вышеперечисленных программ, но унаследовав все преимущества  выше описанных программ, данная разработка унаследовала и некоторые недостатки этих программ приобрела новые. На ряду с тем, что в реализации данной программы можно «сохранять» фалы созданных конфигураций. Эти файлы представляют текстовый файл ни чем не защищённый от редактирования любым текстовым редактором. Для внесения изменений в реестр необходимо каждый раз вызывать файл редактор реестра regedit. Расширяемость этого программного продукта реализована путем возможности  написания интерпретируемых командных файлов. Это негативно сказывается на быстродействии программного продукта. Так, скажем, для внесения изменения в определённую ветвь реестра ОС Windows 95. Необходимо вызвать программу с ключом, частью которого является название ветви реестра. Это очень неудобно, так как название ветви реестра представляет довольно длинную строку, которую совсем не легко запомнить. Но это ещё не гарантирует что изменения внесены в реестр, так как если такого ключа не оказалось по каким-либо причина, то программа вернет сообщение об ошибке и не произведёт никаких изменений. Хочется ещё отметить, что мало понятный интерфейс программы делает работу оператора, ответственного за систему защиты, очень трудной и утомительной. Контроль введённых значений идентификаторов уровня доступа к объектам, практически исключен в данной версии программы. То есть оператор не может просмотреть значение идентификатора доступа к объекту, он может только изменить его. Это, безусловно, приведет к множеству ошибок при попытке внести изменения в уже существующую систему защиты. Необходимо отметить, что в процессе отладки программы  оператору будет необходимо пользоваться интерфейсом командной строки, что неизбежно приведёт к резкому увеличению времени написания командного файла и неизбежному появлению ошибок в уже готовом файле сценария. И главный недостаток этого программного продукта его медлительность. Для того чтобы внести изменения в реестр необходимо произвести следующие  действия:

§  Проверить наличие ветви реестра

§  Проверить наличие переменной реестра

§  Произвести изменения переменной реестра

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

К недостатку который делает невозможным использование этой системы можно отнести, то что данный программный продукт не имеет никакой поддержки многопользовательского режима.

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

 

2.3 Описание алгоритма

            При регистрации пользователя в контролере домена система ОС Windows 95 производит поиск файла конфигурации config.pol в каталоге определенным администратором домена как общедоступный для всех пользователей домена. При нахождение фала модификации реестра происходит его загрузка в оперативную память машины - клиента. В памяти происходит дешифрация шифрованного файла и затем система интерпретирует  расшифрованный файл и производит модификацию реестра. Всё вышесказанное можно пояснить следующей иллюстрацией:

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

2.4 ОрганизациЯ данных и диалога

2.4.1. ОрганизациЯ данных

Входные данные:

1.      Файл шаблона:

CATEGORY !!System

KEYNAME Software\Microsoft\Windows\CurrentVersion\Setup

      POLICY !!EnableUserProfiles

            KEYNAME Network\Logon

            VALUENAME UserProfiles

      END POLICY

      POLICY !!NetworkSetupPath

            PART !!NetworkSetupPath_Path EDITTEXT REQUIRED

            VALUENAME "SourcePath"

            END PART

      END POLICY

      …

     

END CATEGORY

[strings]

System="Система"

NetworkSetupPath="Сетевой путь для установки Windows"

NetworkSetupPath_Path="Путь:"

NetworkTourPath="Сетевой путь к учебнику по Windows"

NetworkTourPath_Path="Путь:"

NetworkTourPath_Tip="Замечание. Имя программы - TOUR.EXE"

EnableUserProfiles="Разрешить создание конфигураций для пользователей"

Network="Сеть"

2.      данные, вводимые пользователем с клавиатуры, при помощи мыши следующим образом:

§   Открыть меню «Правка»

§   Открыть меню «Добавить пользователя»

§   Ввести имя Natasha или выбрать с меню «Обзор»

§   Нажать кнопку «ОК»

§   Выбрать появившегося пользователя двойным щелчком мыши

§   В появившемся окне необходимо щелкнуть мышью на кресте возле соответствующего объекта который мы хотим защитить от изменения («Система» например)

§   В появившемся списке выбрать дочерний объект («Орграничения»)

§   Ввести идентификатор доступа

       Возможные состояния идентификатора доступа:

§   Пустой (белый) – говорит об отрицательном ответе на утверждение слева

§   Полный (галочка) – говорит об утверждение предложения слева

§   Серый – говорит о том, что данный объект не будет обрабатываться, то есть остается значение реестра на рабочей станции не меняется.

3.      данные о системе защиты объектов  хранящиеся в зашифрованных файлах с расширением pol. Подробное описание алгоритма шифрования файла и структуру данного файла можно  найти на сайте разработчика http://www.microsoft.com.

Выходные данные: бинарный файл настроек ОС Windows 95 config.pol. Структура файла зашифрована в соответствие с требованиями защиты данных по категории «С» (стандартное требование защиты данных для рабочих станция работающих по управлением ОС Windows NT). Подробное описание алгоритма шифрования файла и структуру данного файла можно  найти на сайте разработчика http://www.microsoft.com.

2.4.2. ОрганизациЯ диалога

Диалог программы организован при помощи пользовательского интерфейса poledit.exe, который включает в себя: ввод с клавиатуры, поля для текстового ввода строк, списки, переключатели, статические текстовые надписи. Работа с этим интерфейсом соответствует работе пользователя с GUI Windows 95.

Перемещение по полям программы можно осуществлять как с помощью мыши так и с помощью клавиатуры.

При управление мышью различаются следующие действия:

§  Одинарный щелчок мыши – производиться выбора объекта того или иного меню

§  Двойной щелчок мыши производиться для выбора файла в проводнике

§  Перемещение курсора  по экрану производиться путем перемещения манипулятора типа «Мышь» по плоской поверхности.

При управление с клавиатуры перемещение по меню производиться следующим образом:

§  Открытие верхнего ниспадающего меню - клавиша «ALT»

§  Перемещение по открытому меню – клавиши управления курсором

§  Перемещение по объектам внутри оболочки производиться – клавиши управления курсором

§  Открытие свойств пользователя или рабочей станции – клавиша «Enter»

§  Перемещение по списку свойств выбранного объекта – клавиши управления курсором «Вверх», «Вниз»

§  Открытие списка свойств выбранного объекта – клавиши управления курсором «Вправо», «Влево»

§  Отметить «чек бокс» - клавиша «пробел»

§  Удалить «чек бокс» - клавиша «пробел»

§  Перемещение между окон интерфейса – клавиша «Tab»

§  «Быстрое» нажатие на кнопку «ОК» – клавиша «Enter»

Для внесения изменений пользователю Demon13, нужно внести изменения в учётную запись пользователя Demon13. Для внесения изменений в существующую политику защиты оператору необходимо  производит следующие действия:

§  Открыть меню «Правка»

§  Открыть меню «Добавить пользователя»

§  Ввести имя Natasha или выбрать из меню «Обзор»

§  Нажать кнопку «ОК»

§  Выбрать появившегося пользователя двойным щелчком мыши

§  В появившемся окне необходимо щелкнуть мышью на кресте возле соответствующего объекта который мы хотим защитить от изменения («Система» например)

§  В появившемся списке выбрать дочерний объект («Ограничения»)

§  Ввести идентификатор доступа

            Возможные состояния идентификатора доступа:

§  Пустой (белый) – говорит об отрицательном ответе на утверждение слева

§  Полный (галочка) – говорит об утверждение предложения слева

§  Серый – говорит о том, что данный объект не будет обрабатываться, то есть остается значение реестра на рабочей станции не меняется.

При работе с объектами имеющими множество дочерних объектов оператор может управлять отдельными дочерними объектами, а не только всем объектом ОС Window 95. При этом состояние дочернего объекта может быть следующим:

§  Ниспадающее меню – дает оператору выбрать только те условия которые перечислены в списке

§  Строковое поле –даёт оператору возможность ввести строковую константу. Обычно это какое-то сообщение выводимое пользователю при произведение определённых действий. Длинна строки не может превышать 255 символов.

§  Числовое поле – даёт оператору возможность ввести числовое значение или выбрать его при помощи стрелок прокрутки:

§  Стрелка вверх – означает увеличение числа стоящего в поле на единицу

§  Стрелка вниз  – означает уменьшение числа стоящего в поле на единицу

§  Список  - дает оператору управлять появившемся списком кнопками которые появившимися справа:

§  «ОК» – подтвердить изменения

§  «Отмена» – отменить изменения и вернуться к предыдущему меню

§  «Добавить» – добавть элемент списка

§  «Удалить» – удалить элемент списка

2.5 СОСТАВ ТЕХНИЧЕСКИХ И ПРОГРАММНЫХ СРЕДСТВ

2.5.1. ТЕХНИЧЕСКИЕ СРЕДСТВА

Для функционирования программы необходимо:

Серверная часть:

ПК, работающий контролер домена (ов) под управлением ОС Windows NT Sever, Unix или Novell NetWare 4.x

Клиентская часть:

ПК, работающий под управлением ОС Windows 95. На клиентской часть должна быть установлена и функционировать сетевая плата и протокол TCP/IP или один из перечисленных: IPX, NetBUEI. Рабочая станция должна быть настроена на регистрацию в домене.

2.5.2 аппаратные средства

Серверная часть:

При работе сервера на ОС Windows NT 3.5

§  CPU – Intel 486DX66 (или выше)

§  RAM – 16Мб (или больше)

§  HDD – 250Мб (или больше)

§  SVGA 256Kb (или выше)

§  Стандартная мышь для COM порта

§  Стандартная IBM PC/XT клавиатура

§  Монитор 12` черно-белый (или лучше)

При работе сервера на Novell NetWare 2.2

§  CPU – Intel 486DX40 (или выше)

§  RAM – 12Мб (или больше)

§  HDD – 100Мб (или больше)

§  SVGA 256Kb (или выше)

§  Стандартная IBM PC/XT клавиатура

§  Монитор 12` черно-белый (или лучше)

При работе сервера на Unix (RedHat 6.21)

§  CPU – Intel 486SX33 (или выше)

§  RAM – 8Мб (или больше)

§  HDD – 60Мб (или больше)

§  CGA (или выше)

Клиентская часть:

§  CPU – Intel 486SX40 (или выше)

§  RAM – 8Мб (или больше)

§  HDD – 110Мб (или больше)

§  SVGA – 256Kb (или выше)

§  Стандартная мышь для COM порта

§  Стандартная IBM PC/XT клавиатура

§  Монитор 12` черно-белый (или лучше)

2.5.3 Программные средства

Рабочая станция должна функционировать под управлением ОС Windows 95, она должна быть правильно сконфигурирована для работы в сети. На рабочей станции должен быть установлен соответствующее клиентское программное обеспечение. Если серверная часть функционирует под управлением ОС Window NT или Unix, клиентская часть – «Клиент для сетей Microsoft», если серверная часть работает под управлением ОС Novell NetWare, клиентская часть – «Клиент для сетей Novell NetWare». На рабочей станции должны быть активизированы профили пользователей. Рабочая станция должна быть настроена на вход в домен и регистрацию в нем. На клиентской и серверной части должен функционировать один или несколько перечисленных протоколов: TCP/IP, IPX, NetBUEN. Для нормальной работы необходимо, чтобы, по меньшей мере,  хотя бы один совпадал на сервере и рабочей станции.

Сервер должен быть контролером домена (ов). В соответствующей директории:

§  Если сервер работает под управлением ОС Windows NT – c:\winnt\system32\repl\export\

§  Если сервер работает под управлением ОС NetWare – SYS:\PUBLIC

§  Если сервер работает под управлением ОС UNIX – /home

должен быть бинарный фал настроек config.pol. Все пользователи домена должны иметь доступ на чтение к этой папке и файлу. Доступ на запись к папке, где храниться файл config.pol должен быть только у администратора или человека ответственного за политику безопасности.

2.6 технология разработки программного изделия

2.6.1. ВЫБОР ПРОГРАММНОЙ СРЕДЫ

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

            Для редактирования реестра можно использовать множество методов. Перечислим некоторые из них.

К примеру, можно привести стандартный подход реализованный в ОС Windows. Это создание файла определенного формата с расширением *.reg. Эти файлы представляют текстовый файл ни чем не защищённый от редактирования любым текстовым редактором. Для выполнения таких файлов сценария необходим пакетный файл regedit.exe. Для внесения изменений в реестр необходимо каждый раз вызывать файл редактор реестра regedit. Размер этих файлов сценария далёк от компактного. Негативно сказывается на быстродействии программного продукта. Так, скажем, для внесения изменения в определённую ветвь реестра ОС Windows 95. Необходимо вызвать программу с ключом, частью которого является название ветви реестра. Это очень неудобно, так как название ветви реестра представляет довольно длинную строку, которую совсем не легко запомнить. Но это ещё не гарантирует что изменения внесены в реестр, так как если такого ключа не оказалось по каким-либо причина, то программа вернет сообщение об ошибке и не произведёт никаких изменений. Хочется ещё отметить, что мало понятный интерфейс программы делает работу оператора, ответственного за систему защиты, очень трудной и утомительной. Контроль введённых значений идентификаторов уровня доступа к объектам, практически исключен в данной версии программы. То есть оператор не может просмотреть значение идентификатора доступа к объекту, он может только изменить его. Это, безусловно, приведет к множеству ошибок при попытке внести изменения в уже существующую систему защиты. Необходимо отметить, что в процессе отладки программы  оператору будет необходимо пользоваться интерфейсом командной строки, что неизбежно приведёт к резкому увеличению времени написания командного файла и неизбежному появлению ошибок в уже готовом файле сценария. И главный недостаток этого программного продукта его медлительность. Для того чтобы внести изменения в реестр необходимо произвести следующие  действия:

§  Проверить наличие ветви реестра

§  Проверить наличие переменной реестра

§  Произвести изменения переменной реестра

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

            Редактирование реестра можно также проводить программным путем – программой написано на языке высокого уровня, например VB. Такой подход даёт увеличение скорости, по сравнению с первым методом, но не даёт достаточной гибкости в настройке прогрммы, так, как каждый раз необходимо перекомпилировать программу. Используя данный способ настройки созданные на одной машине никак нельзя перенести на другую рабочую станцию. На каждой рабочей станции необходимо проводить полную конфигурацию системы, что при большом количестве рабочих станций, может оказаться очень утомительным занятием. При использование в качестве расширений файлы с дополнительными ключами реестра, мы очень сильно рискуем безопасностью ОС Windows 95, так как в этом случае изменить их не составит труда для злоумышленника, поскольку ему не надо будет вычислять название ключей реестра.

Только средства poledit дают компактный и быстро исполняемый код для автоматической настройки OC Windows 95. Необходимо отметить, что идентификаторы и объекты хранятся в зашифрованном виде, что повышает устойчивость ОС к взлому. При помощи компилятора poledit оператор получает удобный ГДИ сходный с GUI ОС Windows 95. Надо отметить, что нет необходимости проводить обучение оператора производящего защиту ОС Window 95 пользованию ГДИ, если оператор знаком с GUI ОС Windows 9x.

2.6.2. ТЕХНОЛОГИЧЕСКИЙ ПРОЦЕСС разработки программы

Перед написанием программы были исследовано - каких объектов ОС Windows 95 нуждаться в защите. Были исследованы разнообразные способы функционирования программы. Была разработана общая концепция защиты ОС Windows 95, от несанкционированного вторжения пользователя в настройки или конфигурационные файлы ОС Windows 95. Была разработана стратегия разрешённых приложения  ОС Windows 95.

Данная программа реализована в виде исполняемого ОС Windows 95  бинарного файла.

2.6.3 Разработка технологического процесса отладки

            Для данного программного продукта не существует технологического процесса отладки. По этой причине в данной работе рассматривается разработка технологического процесса.

            Отладка программы представляет из себя две стадии:

§  Нахождение ошибки

§  Исправление найденной ошибки

Для нахождения ошибки работы программы необходимо воспользоваться программой стороннего производителя или программой regedit, входящей в стандартную поставку ОС семейства Windows. В данном примере будет рассматриваться работа с программой regedit.

            Для нахождения неверной работы программы необходимо просмотреть ключи реестра изменяемые программой защиты объектов операционной системы WINDOWS95 работающей в многопользовательском режиме под управлением сервера Novell NetWare (Windows NT, Unix), при нахождение несоответствий необходимо произвести поиск ошибки при вводе ключей идентификатора доступа, повторить компиляцию программы и полученный файл config.pol поместить на сервер и произвести повторную регистрацию клиента в контролере домена.

2.6.4 фрагмент отладки программы

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

            Фрагментом отладки можно проиллюстрировать следующим образом  Программист хочет защитить от просмотра следующие диски A:, B:, C:. При повторной регистрации в контролере домена пользователь по-прежнему видит диски A:, B: и C:. Человек ответственный за политику защиты ОС Windows 95. Регистрируется в сервере контролера домена и производит поиск соответствующего ключа реестра для защиты объектов типа "диски". Вычисляет значение ключа. Сравнивает значение рестра с полученным и находит расхождение. После этого человек ответственный за политику безопасности ОС Windows 95 запускает программу защиты объектов операционной системы WINDOWS95 работающей в многопользовательском режиме под управлением сервера Novell NetWare (Windows NT, Unix) и сравнивает в графическом интерфейсе значение идентификатора доступа на против поля "Убрать диски: A:, B: и С:". Значение идентификатора должно быть заполненным (отмечено галочкой). Далее человек ответственный за политику защиты ОС Windows 95 повторяет компиляцию программы, полученный файл config.pol поместить на сервер и произвести повторную регистрацию клиента в контролере домена. В случае если после этого пользователь по-прежнему продолжает видеть диски "A:, B: и С:", необходимо вмешательство в код программы. Это происходит следующим образом. Человек ответственный за политику защиты ОС Windows 95, открывает файл кода программы ADMIN.ADM любым текстовым редактором находит раздел где описывается доступ к объекту типа "Диски" и исправляет ошибку в тексте программы - вводит правильное значение идентификатора доступа.

2.6.5 формальное описание ПОЯ языка

            Язык ПОЯ предназначен для написания шаблонов для "редактора системной политики" или "Microsoft PolEdit". Синтаксис языка ПОЯ схож с синтаксисом для описания переменных и записей языка C++.

            Синтаксис языка ПОЯ следующий:

CLASS Имя_Класса ;Возможные значения MACHINE - изменения касающиеся локальной машины и  USER - изменения касающиеся локального пользователя. В тексте программы можно использовать оба класса.

CATEGORY "Имя категории в кавычках. Может быть заменено строковой переменной"

KEYNAME "Имя  ключа реестра в котором будет производиться изменения

Policy "Имя подкатегории1. Может быть заменено строковой переменной"

      VALUENAME "Имя создаваемой или изменяемой переменной реестра"

      VALUEON NUMERIC 4 ;Значение переменной

End Policy ;конец подкатегории1

Policy "Имя подкатегории2. Может быть заменено строковой переменной"

      VALUENAME " Имя создаваемой или изменяемой переменной реестра"

      VALUEON NUMERIC 7 ; Значение переменной End Policy

End Policy ; конец подкатегории 2

End Category            ;Конец категории

     

      В языке ПОЯ можно пользоваться комментариями. Комментарий пишется после точки с запятой (;). Комментарий всегда однострочный.

            В языке ПОЯ предусмотрена возможность определения строковых переменных. Строковые переменные описываются в конце программы после ключевого слова в квадратных скобках [strings] Формт записи:

Имя_Переменной="Значение переменной"

      В тексте программы строковая переменная вызывается следующим образом:

!!Имя_Переменной

     

2.7 РЕЗУЛЬТАТЫ РАБОТЫ ПРОГРАММЫ И ИХ ОЦЕНКИ

Результатом работы программы является рабочая станция ОС Windows 95 защищённая от несанкционированного доступа пользователя к файлам конфигурации системы и настройкам ОС Window 95. Программа ограничивает полномочия на доступ к объектам на уровне пользователя.

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

3. ЗАКЛЮЧЕНИЕ

В данной выпускной работе была разработана программа предназначена для защиты объектов операционной системы Windows 95 на уровне пользователя при работе в многопользовательском режиме под управлением сервера Novell NetWare (Windows NT, Unix).

4. Список используемой литературы

1.      Кондунова Е. А. – Сетевые средства Windows NT Server 4.0. Киев, “BHV”, 1997 г.

2.      Devid Jams – Руководство Novell для специалистов CNE. Москва. “Лори”, 1996 г.

3.      Evil Nemeth, Garth Snyder. – «Unix – руководство системного администратора». Киев, “BHV”, 1996 г.

4.      Водолазкий В. В.-  «Путь к Linux». Москва. “Нолидж”, 1999 г.

5.      Internet – сайт разработчиков ПО http://www.microsft.com

5. перечень сокращений

ОС

- операционная система

ПОЯ

- проблемно ориентированный язык

ПК

- персональный компьютер

Windows NT

- зарегистрированный товарный знак Microsoft@ 

Novell NetWare

- зарегистрированный товарный знак Novell@

ГДИ

- графический дружественный интерфейс

GUI

- графический интерфейс пользователя

ЛВС

- Локальная Вычислительная Сеть

Бд

- База данных

ЛВС

- Локальна Вычислительна Сеть

ГМД

- Гибкий Магнитный Диск