Научная статья на тему 'Программный комплекс для защиты программного обеспечения от вредоносных действий пользователя'

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

CC BY
114
18
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ограничение прав пользователя / ACL NTFS / системный сервис / драйвер защиты / user rights restrictions / system service/daemon / protection driver / SOHO

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Воронов Артем Юрьевич, Лагутин Руслан Павлович, Кузнецова Алла Витальевна

Рассмотрен программный комплекс Computer Class Shield (CCS), предназначенный для защиты служебной и системной информации на рабочих станциях SOHO-сети от случайных или преднамеренных действий пользователя. Приведён краткий анализ задач, возникающих при администрировании сетей такого класса, выделены их основные аспекты. Каждый из них проанализирован отдельно и освещён с позиции реализации в CCS.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

This paper is an overview of the software package Computer Class Shield (CCS), which is designed to protect the business and system information stored on SOHO-network workstations from accidental or malicious user actions. A brief analysis of problems arising in the administration of such networks is considered; these problems are highlighted in their basic aspects. Each of them is analyzed separately and considered as the part of CCS implementation.

Текст научной работы на тему «Программный комплекс для защиты программного обеспечения от вредоносных действий пользователя»

УПРАВЛЕНИЕ, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И ИНФОРМАТИКА

УДК 681.3

ПРОГРАММНЫЙ КОМПЛЕКС ДЛЯ ЗАЩИТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ОТ ВРЕДОНОСНЫХ ДЕЙСТВИЙ ПОЛЬЗОВАТЕЛЯ

© 2011 г. А.Ю. Воронов, Р.П. Лагутин, А.В. Кузнецова

Южно-Российский государственный South-Russian State

технический университет Technical University

(Новочеркасский политехнический институт) (Novocherkassk Polytechnic Institute)

Рассмотрен программный комплекс Computer Class Shield (CCS), предназначенный для защиты служебной и системной информации на рабочих станциях SOHO-сети от случайных или преднамеренных действий пользователя. Приведён краткий анализ задач, возникающих при администрировании сетей такого класса, выделены их основные аспекты. Каждый из них проанализирован отдельно и осве-щён с позиции реализации в CCS.

Ключевые слова: SOHO; ограничение прав пользователя; ACL NTFS; системный сервис; драйвер защиты.

This paper is an overview of the software package Computer Class Shield (CCS), which is designed to protect the business and system information stored on SOHO-network workstations from accidental or malicious user actions. A brief analysis of problems arising in the administration of such networks is considered; these problems are highlighted in their basic aspects. Each of them is analyzed separately and considered as the part of CCS implementation.

Keywords: SOHO; user rights restrictions; ACL NTFS; system service/daemon, protection driver.

При администрировании SOHO-сетей (Small Office / Home Office - малый/домашний офис [1]) или отдельных рабочих станций часто встаёт задача ограничения прав пользователя для гарантии отсутствия у него возможности случайно или намеренно повредить систему. При этом ограничения прав доступа к файловой системе не всегда являются достаточной мерой. SOHO-сети - локальные сети, предназначенные для домашнего или неактивного офисного использования. Как правило, устройства в таких сетях не предназначены для производственных нагрузок и довольно хорошо переживают длительные периоды бездействия. Частным случаем SOHO-сетей является компьютерный класс. В настоящее время на рабочих станциях таких сетей, как правило, используется морально устаревшее программное обеспечение (ПО): операционные системы (ОС) семейства Windows, в подавляющем большинстве случаев это Windows XP. Так как сеть чаще всего одноранговая, сервер в ней можно выделить чисто номинально: зачастую, он предназначен для выполнения функций файл- и принт-сервера и является рядовой рабочей станцией с дополнительным ПО.

Администрирование подобных сетей без использования технологий соответствующего назначения (Active Directory и т.п.) часто сводится к созданию учетных записей пользователей с ограниченными

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

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

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

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

Для решения задачи комплексного ограничения прав пользователя был разработан программный комплекс Computer Class Shield (CCS). Он имеет клиент-серверную архитектуру; серверная часть хранит статистики использования клиентских машин, изменения их физической конфигурации и некоторые настройки безопасности, клиентская часть состоит из системного сервиса (демона), который поддерживает связь с сервером и делает возможным частичное удаленное управление клиентской машиной, и драйвера защиты, который ограничивает круг приложений, разрешенных к запуску. Также в состав клиента входит специальное оконное приложение, которое выполняет функции отображения сообщений сервера и индикации блокирования машины.

ССS имеет следующие основные функции:

1. Ограничение круга запускаемых приложений.

2. Отслеживание и журналирование операций со сменными носителями.

3. Отключение защиты при монтировании flash-носителя со специальным серийным номером (мастер-flash-накопитель) и её включение при размонтирова-нии.

4. Блокирование/разблокирование рабочей станции с сервера.

5. Просмотр содержимого экрана с клиентской станции на сервере.

6. Удалённый запуск приложений (с сервера на клиенте).

Функции, предоставляемые системой CCS, сочетаются с предоставляемыми ОС Windows XP возможностями: правами доступа к объектам файловой системы NTFS и некоторыми другими функциями управляет ОС, а правами запуска приложений управляет CCS.

Системный сервис CCS

Разные части CCS несут различную нагрузку. Демон выполняет несколько функций: для противодействия инсайдерам [2] в нём при помощи технологии Windows Management Instrumentation (WMI) [3] реализована функция слежения за подключаемыми flash-накопителями. Одной из наиболее мощных возможностей WMI является подписка на извещения о событиях WMI, т.е. создание собственных обработчиков определённых событий WMI; демон организует подписку на события подключения и отключения flash-накопителей и перехватывает уведомления их файловых систем об изменениях. Все эти данные сохраняются и позволяют однозначно идентифицировать накопитель и выяснить время и тип произведённых операций с файлами. Также демон позволяет блокировать накопители, не указанные в списке разрешенных к подключению.

Сервер CCS

Сервер CCS является приложением, физически размещенным на сервере локальной сети или любой замещающей его рабочей станции при его отсутствии. Помимо управления настройками безопасности клиентов, ПО сервера реализует следующие функции управления инфраструктурой:

1. Включение клиентов.

2. Выключение и перезагрузка клиентов.

3. Блокирование/разблокирование клиентов.

4. Удаленный запуск приложений на клиентах.

5. Просмотр рабочих столов.

6. Инвентаризацию программного и аппаратного обеспечения.

Для удаленного включения клиентов применяется технология Wake-On-Lan [4]: ПО сервера формирует специальный пакет данных и отправляет его на МАС-адрес клиента. При получении этого пакета клиент инициализирует запуск ОС. Выключение и перезагрузка осуществляются по командам, отправленным серверным ПО демону, который, получив их, инициализирует запуск системной функции завершения работы системы.

Блокирование клиента производится по команде сервера: при её получении демон запускает оконное приложение, располагаемое поверх всех остальных окон, блокирует нажатия «служебных» сочетаний клавиш (Ctrl+Alt+Delete и т.п.) и переключает драйвер в режим безусловного отрицания, что не позволяет каким-либо образом использовать рабочую станцию. Разблокирование также осуществляется по команде сервера.

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

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

Автоматическая инвентаризация программного и аппаратного обеспечения предупреждает системного администратора об изменении конфигураций клиентов, что позволит выявлять случаи кражи второго и несанкционированной установки первого. Для сбора данных используется технология WMI, хранение осуществляется в базе данных сервера. БД сервера является тривиальной реляционной БД, реализованной средствами СУБД PostgreSQL.

Драйвер защиты

Драйвер - компьютерная программа, с помощью которой другая программа (обычно ОС) получает доступ к аппаратному обеспечению некоторого устройства [5].

Режимы работы драйвера защиты

Режим Описание

DENY REGISTERED/ ALLOW ONLY REGISTERED/ DENYALL Эти режимы регулируют логику допуска приложения к запуску: в режиме DENY REGISTERED драйвер запрещает запуск всех приложений, которые зарегистрированы у него в базе (здесь и далее - зарегистрированные приложения). Все остальные приложения разрешены. В состоянии ALLOW ONLY REGISTERED будет разрешен запуск только зарегистрированных приложений; в DENY ALL будет запрещён запуск любых приложений

STUDY ON/OFF Эти режимы регулируют процесс обучения драйвера. В режиме обучения драйвер регистрирует запущенные приложения (STUDY ON); вне режима обучения - не регистрирует

PROTECTION ON/OFF Эти режимы регулируют процесс обработки драйвером запускаемых приложений: в режиме защиты (PROTECTION ON) драйвер производит фильтрацию запускаемых приложений в соответствии с текущей политикой защиты (см. DENY_REGISTERED/ ALLOW_ONLY_REGISTERED); при отключенном режиме защиты - не производит

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

В случае сочетания режимов STUDY и PROTECTION приоритет будет отдан защите (PROTECTION); действия по обучению выполнены не будут.

Защита объектов ФС

Необходимость регулировать права доступа к файловой системе таким образом, чтобы у пользователя была минимальная возможность случайно или преднамеренно повредить ОС, является очевидной. Целевая ОС (Windows XP) предполагает использование файловой системы NTFS.

NTFS - стандартная файловая система для семейства операционных систем Microsoft Windows NT. NTFS имеет встроенные возможности разграничивать доступ к данным для различных пользователей и групп пользователей (списки контроля доступа -Access Control Lists, ACL), а также назначать квоты (ограничения на максимальный объём дискового пространства, занимаемый теми или иными пользователями). NTFS использует систему журналирования для повышения надёжности файловой системы [6]. Использование ACL NTFS позволяет в полной мере удовлетворить потребности CCS в ограничении доступа пользователя к файловой системе.

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

Литература

1. Википедия, Свободная энциклопедия [Электронный ресурс]: SOHO (техника). URL: http://ru.wikipedia.org/ wiki/SOHO_(техника) (дата обращения: 10.04.2011).

2. Википедия, Свободная энциклопедия [Электронный ресурс]: Инсайдер. URL: http://ru.wikipedia.org/wiki/ Инсайдер (дата обращения: 14.04.2011).

3. Википедия, Свободная энциклопедия [Электронный ресурс]: WMI. URL: http://www.script-coding.com/WMI. html (дата обращения: 14.04.2011).

4. Википедия, Свободная энциклопедия [Электронный ресурс]: WOL (Wake-On-LAN). URL: http://ru.wikipedia. org/wiki/WOL (дата обращения: 14.04.2011).

5. Википедия, Свободная энциклопедия [Электронный ресурс]: Драйвер. URL: http://ru.wikipedia.org/wiki/ Драйвер (дата обращения: 12.04.2011).

6. Википедия, Свободная энциклопедия [Электронный ресурс]: NTFS. URL: http://ru.wikipedia.org/wiki/Ntfs (дата обращения: 14.04.2011).

Поступила в редакцию 27 апреля 2011 г.

Воронов Артем Юрьевич - магистрант, кафедра «Электрические и электронные аппараты», ЮжноРоссийский государственный технический университет (Новочеркасский политехнический институт). Тел. +7 950 84-07-313. E-mail: auvoronov@gmail.com

Лагутин Руслан Павлович - студент, кафедра «Электронные вычислительные машины», Южно-Российский государственный технический университет (Новочеркасский политехнический институт). Тел. +7 928 62-95-621. E-mail: drbeep@drbeep.ru

Кузнецова Алла Витальевна - канд. техн. наук, доцент, кафедра «Электронные вычислительные машины», Южно-Российский государственный технический университет (Новочеркасский политехнический институт). Тел. +7 904 50-88-724. E-mail: alvitkuz@yandex.ru

Voronov Artem Yurievich - graduate student, department «Electric and Electronic Devices», South-Russian State Technical University (Novocherkassk Politechnic Institute). Ph. +7 950 84-07-313. E-mail: auvoronov@gmail.com

Lagutin Ruslan Pavlovich - student, department «Electronic Computing Machines», South-Russian State Technical University (Novocherkassk Politechnic Institute). Ph. +7 928 62-95-621. E-mail: drbeep@drbeep.ru

Kuznetsova Alla Vitalievna - Candidate of Technical Sciences, assistant professor, department «Electronic Computing Machines», South-Russian State Technical University (Novocherkassk Politechnic Institute). Ph. +7 904 50-88-724. E-mail: alvitkuz@yandex.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.