Сделай Сам Свою Работу на 5

Дополнительные способы противодействия





 

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

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

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

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

Избегать обращений к переменным, относящимся к защите напрямую. То есть использовать любые косвенные способы доступа к специальным областям.



Использовать метод «зеркалирования» событий, то есть применять нестандартные действия на стандартные вызовы. Об этом говорилось выше.

Использовать для шифрования надежные, проверенные временем алгоритмы и т. д.

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

 

ЛЕКЦИЯ 15-16

Защиты от несанкционированного доступа

 

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

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

Для этого нужно:

· разбить на классы информацию, хранящуюся и обрабатывающуюся в компьютере;



· разбить на классы пользователей этой информации;

· поставить полученные классы информации и пользователей в определенное соответствие друг другу.

Доступ пользователей к различным классам информации должен осуществляться согласно системе паролей, в качестве которой могут выступать:

· обычные пароли;

· настоящие замки и ключи;

· специальные тесты идентификации пользователей;

· специальные алгоритмы идентификации ПЭВМ, дискеты, программного обеспечения.

Системы защиты информации от НСД обеспечивают выполнение следующих функций:

· идентификация, т.е. присвоение уникальных признаков - идентификаторов, по которым в дальнейшем система производит аутентификацию;

· аутентификация, т.е. установление подлинности на основе сравнения с эталонными идентификаторами;

· разграничение доступа пользователей к ПЭВМ;

· разграничение доступа пользователей по операциям над ресурсами (программы, данные и т.д.);

· администрирование:

· определение прав доступа к защищаемым ресурсам,

· обработка регистрационных журналов,

· установка системы защиты на ПЭВМ,

· снятие системы защиты с ПЭВМ;

· регистрация событий:

· входа пользователя в систему,

· выхода пользователя из системы,

· нарушения прав доступа;

· реакция на попытки НСД;

· контроль целостности и работоспособности систем защиты;

· обеспечение информационной безопасности при проведении ремонтно-профилактических работ;

· обеспечение информационной безопасности в аварийных ситуациях.

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



Если запрашиваемый доступ не соответствует имеющемуся в таблице прав доступа, то системы защиты регистрирует факт НСД и инициализирует соответствующую реакцию.

O Идентификация и аутентификация пользователя

Прежде чем получить доступ к ресурсам, пользователь должен пройти процесс представления компьютерной системе, который включает две стадии:

· идентификацию – пользователь сообщает системе по ее запросу свое имя (идентификатор);

· аутентификацию – пользователь подтверждает идентификацию, вводя в систему уникальную, не известную другим пользователям информацию о себе (например, пароль).

Для проведения процедур идентификации и аутентификации пользователя необходимо наличие:

· программы аутентификации;

· уникальной информации о пользователе.

Различают две формы хранения информации о пользователе: внешняя (например, пластиковая карта или голова пользователя) и внутренняя (например, запись в базе данных). Естественно, что информация, хранящаяся в голове, и информация в базе данных должны быть семантически тождественны.

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

Рассмотрим структуры данных и протоколы идентификации и аутентификации пользователя. Практически любому ключевому носителю информации, используемому для опознания, соответствует следующая структура данных о пользователе:

· IDi - неизменный идентификатор i-го пользователя, который является аналогом имени и используется для идентификации пользователя;

· Ki - аутентифицирующая информация пользователя, которая может изменяться и служит для аутентификации (например, пароль Pi = Ki).

Так для носителей типа пластиковых карт выделяется неизменяемая информация IDi и объект в файловой структуре карты, содержащий Ki.

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

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

 

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

Первая схема. В компьютерной системе хранится:

Номер пользователя Информация для идентификации Информация для аутентификации
ID1 E1
ID2 E2
... ... ...
n IDn En

Здесь Ei = F(IDi, Ki), где «невосстановимость» Ki оценивается некоторой пороговой трудоемкостью T0 решения задачи восстановления Ki по Ei и IDi.

Кроме того для пары Ki и Kj возможно совпадение соответствующих значений E. В связи с этим вероятность ложной аутентификации пользователей не должна быть больше некоторого порогового значения P0. На практике задают T0 = 1020...1030, P0 = 10-7...10-9.

Протокол идентификации и аутентификации для первой схемы

· 1. Пользователь предъявляет свой идентификатор ID.

· 2. Если существует i = 1...n, для которого ID = IDi, то пользователь идентификацию прошел успешно. Иначе пользователь не допускается к работе.

· 3. Модуль аутентификации запрашивает у пользователя его аутентификатор K.

· 4. Вычисляется значение E = F(ID, K).

· 5. Если E = Ei, то аутентификация прошла успешно. Иначе пользователь не допускается к работе.

Вторая схема (модифицированная). В компьютерной системе хранится:

Номер пользователя Информация для идентификации Информация для аутентификации
ID1, S1 E1
ID2, S2 E2
... ... ...
n IDn, Sn En

Здесь Ei = F(Si, Ki), где S - случайный вектор, задаваемый при создании идентификатора пользователя; F - функция, которая обладает свойством «невосстановимости» значения Ki по Ei и Si.

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.