Обнаружение вредоносных закладокРефераты >> Программирование и компьютеры >> Обнаружение вредоносных закладок
Очевидно, что внутренний аутентифицирующий объект не должен существовать в компьютерной системе длительное время (больше времени работы конкретного пользователя). Далее, для постоянного хранения необходимо использовать некую информацию, преобразованную из первичной. Рассмотрим типовые схемы аутентификации[1].
Схема 1. В компьютерной системе выделяется объект-эталон для идентификации и аутентификации (положим, что в системе зарегистрировано n пользователей). Структура объекта-эталона для схемы Т показана в таблице 2.1:
Таблица 2.1
Номер пользователя |
Информация для идентификации |
Информация для аутентификации |
1 |
ID1 |
E1 |
2 |
ID2 |
E2 |
… |
… |
… |
n |
IDn |
En |
В табл. 2.1. Ei = F(IDi, Кi), где F - функция, для которой можно качественно описать свойство "невосстановимости" Ki по Еi и IDi.
"Невосстановимость" Ki описывается некоторой пороговой трудоемкостью Тo решения задачи восстановления аутентифицирующей информации по Ei и IDi, ниже которой не должна опускаться ни одна оценка трудоемкости нахождения Ki для всех известных алгоритмов решения данной задачи.
Кроме того, для пары Ki и Kj возможно совпадение соответствующих значений Е. В связи с этим вводится вероятность ложной аутентификации пользователя Рла, которая вычисляется как условная вероятность события "совпадение Еi и Ej при условии нетождественности К: и Kj". Эта вероятность не должна быть больше некоторого предельного значения Р0. На практике задают То = 1020 .1030, Р0 = 10-7…10-9
Алгоритм идентификации и аутентификации (схема 1)
1. Пользователь предъявляет свой идентификатор (имя) ID.
2. Если ID не совпадает ни с одним IDi, зарегистрированным в компьютерной системе, то идентификация отвергается - пользователь не допущен к работе, иначе (существует IDi=ID) устанавливается факт "пользователь, назвавшийся пользователем i, прошел идентификацию".
3. Субъект аутентификации запрашивает у пользователя аутентификатор К.
4. Субъект аутентификации вычисляет Y=F(IDi, К).
5. Субъект аутентификации производит сравнение Ei и Y. При совпадении фиксируется событие "пользователь успешно аутентифицирован в системе", информация о пользователе передается в программные модули, использующие ключи пользователей (система шифрования, разграничения доступа и т.д.), в противном случае аутентификация отвергается - пользователь не допущен к работе.
Данная схема может быть модифицирована.
Схема 2. В компьютерной системе выделяется объект-эталон, структура которого показана в табл. 2.2 (положим, как и в схеме 1, что в системе зарегистрировано n пользователей). В таблице Е, = F(Si, Ki), где Si -случайный вектор, заданный при создании пользователя (т.е. при создании строки, необходимой для идентификации и аутентификации пользователя); F - функция, для которой можно качественно описать свойство "невосстановимость" К по Ei и Si. "Невосстановимость" Кi, понимается в том же смысле, как и для схемы 1.
Таблица 2.2
Номер пользователя |
Информация для идентификации |
Информация для аутентификации |
1 |
ID1,S1 |
E1 |
2 |
ID2,S2 |
E2 |
… |
… |
… |
n |
IDn,Sn |
En |
Алгоритм идентификации и аутентификации (схема 2)
1. Пользователь предъявляет свой идентификатор (имя) ID.
2. Если ID не совпадает ни с одним IDi, зарегистрированным в компьютерной системе, то идентификация отвергается - пользователь не допущен к работе, иначе (существует IDi = ID) устанавливается факт "пользователь, назвавшийся пользователем i, прошел идентификацию".
3. По IDi выделяется Si.
4. Субъект аутентификации запрашивает у пользователя аутентификатор К.
5. Субъект аутентификации вычисляет Y = F(Si, К).
6. Субъект аутентификации производит сравнение Ei и Y. При совпадении фиксируется событие "пользователь успешно аутентифицирован в КС", в противном случае аутентификация отвергается - пользователь не допущен к работе.
Вторая схема аутентификации применяется в ОС Unix. В качестве идентификатора ID используется имя пользователя (запрошенное по Login), в качестве Ki- пароль пользователя (запрошен по Password), функция F представляет собой алгоритм шифрования DES. Эталоны для идентификации и аутентификации содержатся в файле Etc/passwd.
Утверждение (о подмене эталона). Если пользователь имеет возможность записи объекта хранения эталона, то пользователь может быть идентифицирован и аутентифицирован (в рамках рассмотренных схем), как любой пользователь[1].
Доказательство. Пусть имеется пользователь i. Покажем, что он может выдать себя за любого пользователя j. Возможность записи в объект, содержащий эталоны, означает возможность замены любой записи на произвольную. Пользователь i меняет j-ю запись на свои параметры IDi и Ei (или дополнительно и Si). При следующей процедуре идентификации он будет опознан как пользователь j (по построению и описанию схем). Утверждение доказано.
Смысл данного утверждения состоит в том, что возможность записи объекта хранения эталонов должны иметь только субъекты специально выделенного пользователя компьютерной системы, отвечающего за управление безопасностью.
Заметим, что необходимым требованием устойчивости схем аутентификации к восстановлению информации Ki является требование случайного равновероятного выбора Кi из множества возможных значений. Это требование, как уже было указано, автоматически снижает ценность систем парольной аутентификации, поскольку в них выбор аутентифицирующей информации происходит из небольшого множества осмысленных слов, мощность которого определяется энтропией соответствующего языка.
Рассмотрим теперь иерархию хранения и использования ключей при условии наличия в компьютерной системе криптографической подсистемы, включающей алгоритм шифрования Е, алгоритм расшифрования D и исходные объекты O1, ., Оn, зашифрованные на ключах ki, ., kn. Результатом зашифрования исходных объектов являются объекты доступа в системе: Y1, Yn. При этом Yj = E(0j, kj), Oj = D(Yj, kj). Пусть владельцу ключа Kj необходимо обеспечить доступ к объекту Yj (доступ подразумевает возможность расшифрования Yj). Для этого он должен знать ключ kj. Очевидно, что требуются дополнительные объекты хранения зашифрованных ключей (табл. 2.3). С учетом того, что к объекту Yj могут иметь доступ несколько пользователей, объект уj может содержать несколько подобъектов вида E(kj, Km), где Km - ключ m-ro пользователя.