Меню
|
Тема магистерской работы
Разработка программно-аппаратных средств защиты информации в среде Windows
Автор
Онух Д.О.
Обзор темы
Модель безопасности Windows основана на понятиях аутентификации и авторизации.
При аутентификации проверяются идентификационные данные пользователя,
а при авторизации - наличие у него прав доступа к ресурсам компьютера или сети.
В Windows также имеются технологии шифрования, которые защищают
конфиденциальные данные на диске и в сетях: например, EFS (Encrypting File System) и др.
Аутентификация. Регистрируясь на компьютере для получения доступа к ресурсам локального компьютера или сети,
пользователь должен ввести свое имя и пароль.
Авторизация позволяет контролировать доступ пользователей к ресурсам.
Применение списков управления доступом (access control list, ACL) и прав доступа NTFS гарантирует,
что пользователь получит доступ только к нужным ему ресурсам, например, к файлам,
дискам (в том числе сетевым), принтерам и приложениям. С помощью групп безопасности, прав
пользователей и прав доступа можно одновременно управлять безопасностью, как на уровне ресурсов,
так и на уровне файлов, папок и прав отдельных пользователей [3].
Рассмотрим еще один способ обеспечения защиты информации - система сертификации.
В последнее время цифровые сертификаты получают все большее распространение в корпоративных сетях.
Использование систем сертификации позволяет решить сразу несколько проблем:
- аутентификация участников соединения. Пользователь, устанавливая соединение
с удаленным компьютером, должен предъявить свой цифровой сертификат. Проверяя данный сертификат, сервер
получает гарантию, что он работает с авторизированным пользователем;
- обеспечение конфиденциальности передаваемой информации за счет шифрования
сообщений;
- обеспечение целостности передаваемой информации;
Выбор способа защиты информации
Анализ вышеприведенных способов показывает преимущество системы сертификации над другими системами
защиты информации. Недостатком данного способа является трудоемкость его реализации.
В данной работе разрабатывается упрощенная система сертификации на примере
системы обновления программных продуктов.
Реализация выбранного способа
В данном проекте системы обновления программных продуктов будем использовать
способ частичного обновления – сервер передает клиенту только более новые файлы.
Выборочное обновление файлов осуществляется за счет служебной информации,
которой обмениваются клиент и сервер в процессе обновления.
Достоинством этого способа является уменьшение количества данных передаваемых между клиентом и сервером.
К недостаткам данного способа можно отнести трудоемкость его реализации.
Каждому файлу обновляемого продукта присвоена своя версия.
Информация о версиях файлов хранится в специальном конфигурационном файле – файле версий.
При обновлении клиент посылает серверу имена файлов и их версии.
Сервер анализирует данную информацию и отсылает клиенту только те файлы, у которых на сервере
есть большая версия (рис.1). После окончания процесса обновления файлов клиент обновляет
файл версий. На стороне клиента файл версий создается при инсталляции программы
и его редактирование пользователем запрещено. Редактированием файла версий
на стороне сервера занимаются администраторы.
Рис. 1. Пример обновления продукта Test.
Обновление файлов через сеть осуществляется посредством использования TCP протокола.
Для программной реализации обмена данными по сети использованы сокеты Беркли.
Данный выбор обусловлен более высокой скоростью работы сокетов Беркли по сравнению с их реализацией
в высокоуровневых библиотеках классов, а также для совместимости проекта с ОС семейства UNIX [2].
Самое главное в процессе обновления - это процесс аутентификации клиента. Для успешного обновления
программного продукта клиент должен предоставить серверу цифровой сертификат. Если сертификат
клиента проходит проверку (т.е. является действительным), то далее все передаваемые данные между
клиентом и сервером шифруются.
Также важной частью в системе сертификации является получение сертификата клиентом. В рассматриваемом
примере системы обновления программного обеспечения выдачей сертификата заведует тот же сервер, который
выполняет обновление. Клиент должен послать запрос с идентификационными данными, в случае успешного
завершения процесса проверки, сервер выдает клиенту сертификат, однозначно идентифицирующий данного
клиента.
Выводы
Сервер будет работать под управлением операционной системы Linux [2], а клиент под управлением операционной
системы Windows. Сервер разрабатывается на языке C и компилируется с помощью gcc. Средством разработки
клиента является Visual Studio 2003, язык С++, библиотека MFC [1].
Описанная выше схема реализации системы обновления может слегка измениться,
т.к. проект находится в разработке.
Список использованной литературы
1. Девид Дж. Круглински, Программирование на Visual C++ 6.0 - СПб.: Питер, 2003. - 863с.
2. У.Р. Стивенс, UNIX Разработка сетевых приложений - СПб.: Питер, 2004. - 1086с.
3. M. Руссинович, Внутреннее устройство Windows, СПб.: Питер, 2005. - 992с.
4. Д. Рихтер, Windows создание эффективных Win32-приложений - СПб.: Питер, 2003 - 753с.
|