Идентификация и аутентификации пользователей
Идентификацию и аутентификацию пользователей можно считать основой программно-технических средств безопасности. Идентификация позволяет субъекту (пользователю, процессу, действующему от имени определенных пользователей, или иному аппаратно-программному компоненту) назвать себя (сообщить свое имя). Посредством аутентификации вторая сторона убеждается, что субъект – действительно тот, за кого он себя выдает. Совокупность выполнений процедур идентификации и аутентификацию называют процедурой авторизации.
Реализация процедур авторизации пользователей является общей проблемой для любых технических систем, в которых требуется обеспечивать разграничение доступа к обрабатываемой информации. Так как функционирование всех механизмов разграничения доступа, использующих аппаратные или программные средства, основано на предположении, что любой пользователь системы представляет собой конкретное лицо, то должен существовать некоторый механизм его опознания, обеспечивающий установление подлинности данного пользователя, обращающегося к системе.
Существуют три класса опознания (рисунок 10.1, [20]), которые базируются:
- на условных, заранее присваиваемых признаках (сведениях), известных субъекту (что знает субъект);
- на физических средствах, действующих аналогично физическому ключу (что имеет субъект);
- на индивидуальных характеристиках субъекта, его физических данных, позволяющих выделить его среди других лиц (что присуще субъекту).
Рисунок 10.1 – Классификация методов опознания
10.1. Опознание на основе принципа «что знает субъект»
Метод паролей
Данный метод заключается в том, что пользователь на клавиатуре компьютера или специально имеющемся наборном поле набирает только ему известную комбинацию букв и цифр, которая собственно и является паролем. Введенный пароль сравнивается с эталонным, хранящимся в системе, и при положительном результате проверки пользователь получает доступ к системе. Приведенная схема опознания является простой с точки зрения реализации, так как не требует никакой специальной аппаратуры и реализуется посредством небольшого объема программного обеспечения.
Рассмотрим алгоритм функционирования парольного средства аутентификации пользователей в операционной системе Microsoft Windows XP. Аутентификация пользователей в операционной системе Microsoft Windows XP основана на использовании паролей и реализуется следующими компонентами: Winlogon, GINA, LSASS, MSV1_0, SAM.
Winlogon – системный процесс, который отвечает за проведение операций входа и выхода пользователя в ОС.
GINA (Graphical Identification and Authentication) – файл динамической библиотеки, который предназначен для ввода имени пользователя и его пароля.
LSASS (Local Security Authentification SunSystem) – подсистема локальной аутентификации, которая управляет процессом аутентификации.
MSV1_0 – пакет аутентификации, который используется ОС при интерактивном входе пользователя. Предназначен для идентификации и аутентификации пользователя.
SAM (Security Account Manager) – объект, который ведет базу данных имен пользователей и паролей.
Схема взаимодействия компонентов ОС Microsoft Windows XP в процессе интерактивного входа пользователя представлена на рисунке 10.2.
Алгоритм функционирования средства аутентификации с использованием паролей в операционной системе Microsoft Windows XP при интерактивном входе представлен на рисунке 10.3. Процесс аутентификации включает в себя следующие этапы.
- запрос на вход в систему;
- ввод имени и пароля;
- идентификация пользователя;
- аутентификация пользователя;
- создание маркера доступа.
Запрос на вход в систему. Пользователь нажимает комбинацию клавиш Ctrl+Alt+Del. В результате этого Winlogon вызывает GINA, который выводит на экран поля, необходимые для ввода имени и пароля пользователя.
Рисунок 10.2 - Компоненты, участвующие в процессе интерактивного входа пользователя в операционную систему Microsoft Windows XP
Ввод имени и пароля. После набора пользователем имени и пароля GINA передает эти данные в Winlogon, который производит хеширование пароля, создает уникальный локальный идентификатор защиты (SID – Security IDentifer) для этого пользователя и вызывает LSASS.
Идентификация пользователя. LSASS подключает пакет аутентификации MSV1_0, который принимает от Winlogon имя пользователя и хешированную версию пароля и посылает в SAM запрос на получение из учетной записи пользователя, которая хранится в базе данных SAM, хешированного пароля. Идентификация заключается в нахождении введенного пользователем имени в базе данных SAM. Если введенное пользователем имя не содержится в базе данных SAM, то MSV1_0 возвращает в LSASS статус отказа.
Аутентификация пользователя. В случае нахождения имени пользователя в базе данных MSV1_0 сравнивает хешированный пароль пользователя с тем, который хранится в базе данных SAM и соответствует учетной записи пользователя. Если эти данные совпадают, MSV1_0 генерирует локально-уникальный идентификатор сеанса входа (LUID – Locally Unique IDentifer) и передает его вместе с SID в LSASS. Если данные не совпадают, то MSV1_0 возвращает в LSASS статус отказа.
Создание маркера доступа. Собрав необходимую информацию, LSASS вызывает исполнительную систему для создания маркера доступа. Исполнительная система создает маркер доступа для интерактивного сеанса, который включает в себя SID пользователя. После успешного создания маркера доступа LSASS дублирует его, создавая описатель, который передается Winlogon, а свой описатель закрывает. На этом этапе LSASS сообщает Winlogon об успешном входе. При наличии в LSASS статуса отказа Winlogon сообщает пользователю о неправильно введенном имени или пароле. Программа Winlogon дает пользователю несколько попыток ввода правильных идентификатора и пароля. После превышения числа допустимых попыток программа прекращает свое выполнение.
Схема с использованием простого пароля имеет два недостатка:
– большинству пользователей сложно запомнить произвольное число, используемое в качестве пароля;
– пароль может быть использован другим лицом, так как его легко подсмотреть.
Модернизацией схемы с использованием простого пароля является пароль однократного использования. В этой схеме пользователю выдается список из N паролей, такие же N паролей хранятся в системе. Данная схема обеспечивает большую степень безопасности, но она является и более сложной.
Здесь при каждом обращении к системе синхронно используется пароль с текущим номером, а все пароли с предыдущими номерами вычеркиваются. В случае если старый пароль из предыдущего сеанса стал известен другому пользователю, система его не воспринимает, так как действующим будет следующий по списку пароль.
Схема паролей однократного использования имеет следующие недостатки:
– пользователь должен помнить или иметь при себе весь список паролей и следить за текущим паролем;
– в случае если встречается ошибка в процессе передачи, трудно определить, следует ли передавать тот же самый пароль или послать следующий;
– необходимо иметь разные таблицы паролей для каждого пользователя, так как может произойти рассинхронизация работы.
Последний недостаток можно устранить, используя генератор паролей. В этом случае в ЭВМ реализуется алгоритм, осуществляющий преобразование
где x, k, y – двоичные векторы соответственно характеристического номера, ключа и пароля.
Реализация процедуры опознания пользователя сводится к двум задачам: заготовке паролей и установлению подлинности.
Рисунок 10.3. Схема алгоритма функционирования средства аутентификации с использованием паролей в операционной системе Microsoft Windows XP
При заготовке паролей с помощью преобразования получают набор чисел
,
где i – номер пользователя; j – номер обращения данного пользователя;
П – текущее значение пароля, сформированное на ключе k.
Сгенерированный набор чисел выдается соответствующим пользователям.
Опознание системой пользователя I происходит следующим образом: пользователь с номером i вводит парольный набор в ЭВМ. Программа опознания выделяет номер пользователя Хij, а также запоминает пароль . Для каждого i-го пользователя существует свой счетчик обращений . В случае, если , программа выдает сообщение о несанкционированном доступе (НСД). В противном случае включается генератор паролей. Преобразование на действующем ключе k выдает число y, которое сравнивается с паролем . В случае совпадения y и пользователь считается опознанным, а в случае несовпадения выдается сигнал о несанкционированном доступе.
Использование генератора паролей избавляет от необходимости хранить таблицы паролей для каждого пользователя, однако первые два недостатка при его использовании сохраняются.
10.1.2. Метод «запрос-ответ»
В методе «запрос-ответ» набор ответов на m стандартных и n ориентированных на пользователя вопросов хранится в ЭВМ и управляет программой опознания. Когда пользователь делает попытку включиться в работу, программа опознания случайным образом выбирает и задает ему некоторые (или все) из этих вопросов. Пользователь должен дать правильный ответ на все вопросы, чтобы получить разрешение на доступ к системе. Вопросы могут быть выбраны таким образом, чтобы пользователь запомнил ответы и не записывал их.
Модификация этого метода предполагает изменение каждый раз одного или более вопросов, на которые пользователь давал ответ до этого.
Существует два варианта использования метода «запрос-ответ», вытекающих из условий m = 0 или n = 0. Вариант с m = 0 предполагает, что вопросы составлены на основе различных фактов биографии индивидуального пользователя, представляют собой имена его друзей, дальних родственников, старые адреса и т.д. Пользователь, который сам предложил опознавательный вопрос, всегда даст на него правильный ответ, чего не сможет сделать злоумышленник. Иногда предпочтительнее вариант с n = 0, т.е. пользователям задается большее количество стандартных вопросов и от них требуются ответы на те, которые они сами выберут. Достоинство рассмотренной схемы в том, что пользователь может выбирать вопросы, а это дает весьма высокую степень безопасности в процессе включения в работу. В то же время нет необходимости хранить в системе тексты вопросов для каждого пользователя, достаточно хранить указатели на вопросы, выбранные данным пользователем, вместе с информацией, устанавливающей его подлинность. Текст каждого стандартного вопроса необходимо ввести для хранения только один раз, поэтому в системе с большим числом пользователей это может дать экономию памяти.
Наряду с достоинствами метод «запрос-ответ» все же имеет и недостатки, ограничивающие возможность его использования, а именно:
– метод требует проявления изобретательности от самих пользователей, что для них является дополнительной нагрузкой;
– большинство людей, как правило, предлагают стереотипные вопросы и ответы в качестве опознавательных, поэтому весьма вероятно, что настойчивый нарушитель может, собрав статистику, предугадать многие вопросы и ответы;
– процедура обмена множеством опознавательных запросов и соответствующих им ответов может быть сложной и утомительной для пользователей;
– метод «запрос-ответ» может использоваться только для небольших организованных групп пользователей, он неприменим для массового использования в силу некоторой громоздкости.
10.2. Опознание на основе принципа «что имеет субъект»
К данному классу опознания относятся методы, основывающиеся на физических средствах, которые имеет при себе данный пользователь, обращающийся к системе. К ним относятся магнитные карточки, смарт-карты, USB-ключи, таблетки Touch Memory и прочие подобные средства, которые можно объединить общим названием – электронный ключ. Электронным ключом в самом общем смысле являются физические носители идентификатора субъекта и его пароля. Кроме того, на носителях содержится дополнительная информация, необходимая в процессе опознания субъекта.
Для восприятия смарт-карта должна иметь ридер. В процессе обмена информацией с ридером происходит опознание смарт-карты. Опознание субъекта происходит после подтверждения им того, что именно он является владельцем смарт-карты в результате ввода с клавиатуры PIN-кода. Аналогом ридера для USB-ключей выступает стандартный USB-порт, а для электронного ключа Touch Memory – считывающее устройство.
Дата добавления: 2016-02-04; просмотров: 2713;