20.10.2012

Методы исследования надёжности удалённой аутентификации

"Электросвязь", № 10, октябрь, 2012
Статья Алексея Сабанова, заместителя генерального директора компании "Аладдин Р.Д."

Введение. Задачи управления доступом пользователей актуальны для любой информационной системы (ИС). С каждым зарегистрированным в сети субъектом (пользователем или процессом, действующим от имени пользователя) связана определенная информация, однозначно его идентифицирующая. Эту информацию называют идентификатором субъекта, а идентификацией — процесс распознавания пользователя по идентификатору, занесённому в базу данных при его регистрации в качестве легального пользователя. Аутентификация — это процесс подтверждения подлинности идентификации пользователя, предъявившего свой идентификатор.

От того, насколько качественно и надёжно пользователь будет аутентифицирован, зависит эффективность всей системы управления доступом [1]. Задача аутентификации становится особенно актуальной при реализации таких сервисов безопасности, как электронная подпись, организация доступа к личному кабинету на портале госуслуг, в том числе доступа к удалённым сервисам при переходе к облачным вычислениям. Аутентификация является основой создания доверительных отношений при удалённом взаимодействии и должна быть одним из самых важных доверенных сервисов при формировании единого пространства доверия [2].

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

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

Краткий обзор работ. Значительная часть исследований последних двух десятилетий посвящена надёжности функционирования ИС. Для таких задач в условиях недостатка не только статистических данных, но и чётко определенных состояний систем наиболее развитыми оказались метод интервальных средних [3, 4] и так называемый социотехнический подход [5, 6]. Существенный вклад в становление методов оценки надёжности внёс последовательный ряд исследований, проведённых под руководством И.Б. Шубинского [7, 8]. Эти работы в основном касаются создания методов исследования функциональной надёжности программного обеспечения; предложенные методы анализа в ряде случаев применимы и для рассмотрения процессов аутентификации.

Существенная часть опубликованных результатов исследований надёжности в области информационной безопасности, как правило, не отличается целостностью. Так, в работе [9], где рассматриваются вопросы надёжности защиты компьютерной информации от несанкционированного доступа (НСД), известное в теории надёжности понятие "отказ" трактуется как обнаружение уязвимости в защите от НСД. Применение теории надёжности механизмов и машин "в лоб", делают вывод авторы, приводит к результатам, не соответствующим практике.

В [10] показано, что надёжность ААА напрямую связана с качеством реализации процессов как у претендента, так и у доверяющей стороны. Следовательно, одним из методов исследования может быть процессный подход. При этом особое внимание необходимо уделять обеспечению доверенной среды. Выводом, полученным в этой работе, мы воспользуемся при рассмотрении надёжности процессов аутентификации.

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

Взаимосвязь понятий безопасности и надёжности. Базируясь на результатах [11] для вычислительных систем, введем основные понятия, а затем покажем взаимосвязь понятий безопасности и надёжности.

Рассмотрим понятие надёжности информационной системы (рис. 1). Принимаем, что оно состоит из трех частей: характеристик надёжности, средств и угроз надёжности (не путать с угрозами информационной безопасности!).

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

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

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

Попытки напрямую связать понятия отказа системы с её характеристиками безопасности всегда сталкивались с трудностями и не имеющими соответствия действительности результатами, поскольку этот вопрос находится на стыке двух отдельно развивающихся наук — теории надёжности механизмов и теории информационной безопасности. Чтобы приблизиться к решению данной проблемы, вновь обратимся к рис. 1.

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

Методы исследования надёжности ААА. Создание надёжных систем аутентификации актуально как для корпоративных систем, так и для Единой государственной системы идентификации и аутентификации (ЕСИА) [12]. Для решения задач построения единой системы доверия и перехода к облачным вычислениям необходимо выработать определенные требования к процессам аутентификации с целью введения уровней доверия к аутентификации [2]. Такие требования, безусловно, должны формулироваться с учётом надёжности аутентификации. Необходимо разработать подходы к исследованию вопросов надёжности аутентификации, и конечной целью данной статьи является создание алгоритмов получения качественных и количественных характеристик для уровней достоверности аутентификации. Эта задача может быть решена на основе анализа рисков.

Согласно стандарту по менеджменту риска (ГОСТ Р 51901.1-2002), для управления рисками рекомендуется предварительный анализ риска, в котором проводится "систематическая идентификация потенциальных опасностей и возможных видов отказов, ранжирование рисков, оценка надёжности возможных модификаций системы для снижения риска и достижения предпочтительных уровней её надёжности" [13].

Надёжность — это часть такого более общего понятия, как качество (quality); оно определяется в стандарте как степень соответствия совокупности присущих характеристик некоторым требованиям. На семинаре по вопросам надёжности технического комитета ТС56 МЭК (Лондон, 2006 г.) отмечалось, что термин "надёжность" имеет такое же свойство "зонтика", как термин "качество". И если под широким зонтиком "качество" расположился зонтик "надежность", то понятие "риск" заняло место и под зонтиком "надёжность", и под зонтиком "качество".

Обратимся к этой теме с другой стороны, тем более что вопрос о качестве предоставления государственных услуг в электронной форме уже встает в полный рост. Сформулировать, что такое качество, поможет анализ работ [15, 16].

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

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

  • о мероприятиях, осуществляемых поставщиком для обеспечения качества услуг;
  • об организационной структуре поставщика;
  • о бизнес-процессах поставщика и их эффективности;
  • о динамике показателей качества продукции и услуг.

При выборе поставщиков и оценке качества предоставляемых ими услуг этим аспектам уделяется особое внимание.

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

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

Анализ надёжности системы аутентификации. Как один из подходов предлагается исследование надёжности системы в плане совокупности надёжности отдельных составляющих компонентов системы с учетом их взаимодействия. В соответствии с классической теорией надёжности важно четко описать систему и её функционирование. Для исследования поведения сложных систем обычно используется метод декомпозиции. Сначала описывается подробная схема. Затем ряд соседних элементов со схожими характеристиками объединяется в группы для поэтапного анализа укрупненных компонентов.

Система для удаленной аутентификации состоит из клиентской и серверной частей, взаимодействующих в процессе обмена защищенными сообщениями (рассмотрим самый сложный случай двухстороннего обмена класса challenge-response). Серверная часть включает оборудование, системное и прикладное программное обеспечение, клиентская — аппаратную часть, системное, прикладное программное обеспечение и пользователя, участвующего в процессах хранения и предъявления идентифицирующей его информации и аутентификатора (секрета). В данном случае в качестве объекта исследования выступает простая по архитектуре (плоская система с последовательным рядом компонент), но сложная по составу (прежде всего из-за наличия человеческого фактора, программного обеспечения и настроек) система. Возможными способами оценки её надёжности могут стать проведенные независимо друг от друга исследования:

  • анализ функциональной надёжности по методике [7];
  • изучение надёжности социотехнической системы по методикам [5, 6].

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

Оценка надёжности процессов. Ещё один подход базируется на исследовании надёжности процесса аутентификации, который состоит из трёх основных этапов.

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

  1. Субъект (аппликант) предъявляет в центр регистрации (ЦР) свои Credentials— электронные удостоверения (ЭУ) или действующие бумажные удостоверения личности, содержащие присвоенные ему идентификаторы: номер паспорта, номер удостоверения, СНИЛС, ИНН...
  2. ЦР проверяет предъявленные бумажные или электронные удостоверения на предмет совпадения их принадлежности данному субъекту и их действительности (валидация).
  3. На основании выполненной проверки ЦР создает учётную запись для данного субъекта в базе данных ЦР для доступа к информационным ресурсам (ресурсу).
  4. На основе записи для субъекта ЦР регистрирует/издает секрет (аутентификатор), ассоциированный с конкретным субъектом. В простейших случаях процесс издания Credentials сводится к регистрации пары логин-пароль, в самых сложных — для одного субъекта может быть издано несколько ЭУ (например, сертификаты ключа подписи, ключа шифрования, ключа логического доступа). Фактически ЭУ является своего рода электронным паспортом, имеющим реквизиты издателя, время, место издания, срок действия, алгоритм формирования (издания), процедуру проверки (цепочку доверия) и т.д.
  5. Затем следует процедура (иногда её не требуется создавать) делегирования прав доступа (фактически делегирование доверия к изданным аутентификатору и ЭУ) другой (или другим) ИС на основе доверительных отношений. При переходе к облачным вычислениям эта процедура становится весьма актуальной.
  6. Последней процедурой регистрации является выдача субъекту на руки изданных центром регистрации аутентификатора и ЭУ.

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

  1. Хранение секрета (аутентификатора) и ЭУ. Самым строгим секретом является закрытый ключ. Как показано в [2], лучшим средством хранения секретного ключа (ключа проверки подписи) служит применение для генерации, хранения и использования устройств класса secure signature creation device (SSCD).
  2. Процедура передачи аутентификатора (предъявление его проверяющей стороне). В современных протоколах сетевой аутентификации многоразовый пароль обычно не передаётся по сети в открытом виде. При применении протоколов на базе PKI сообщения перед отправкой подписываются сторонами и обмен (challenge-response) производится уже зашифрованными сообщениями.

Третий этап — валидация. Проверка валидности ЭУ (сертификата ключа подписи) — это действия, производимые над проверяемым сертификатом ключа подписи для того, чтобы убедиться в возможности его использования. Валидация состоит из следующих процедур: проверки валидности ЭУ и пути сертификации (цепочки сертификатов) ЭУ. Путь считается валидным, если первый сертификат издан пунктом доверия, последний сертификат издан для конечного данного объекта и содержит данный открытый ключ, имена издателей и субъектов сертификатов (кроме первого и последнего) образуют непрерывную последовательность: имя издателя текущего сертификата совпадает с именем субъекта предыдущего сертификата. При этом важно, чтобы период действия сертификатов цепочки не истёк на момент проверки.

Рассмотрим надёжность выполнения процедур удаленной аутентификации. Прежде всего, определим, на какой стороне производится процедура (сервера или претендента) и насколько критичен вклад сбоев, отказов и ошибок каждой процедуры в надёжность всего процесса.

Приведем оценки надёжности указанных процедур. Начнем с сервера. Известно, что для отказоустойчивых систем вынужденный простой не должен превышать 52 мин/год, не считая случаев отключения питания в рабочих помещениях и плановых перерывов. Для грубой оценки надёжности серверных процедур (п. 1.3—1.5 и п. 3.1—4.1. табл. 1) при аутентификации принимаем, что вероятность сбоя всех серверных процедур Р может изменяться от 0,1 до 1%, т.е. условный коэффициент надёжности К = 1/Р будем оценивать в пределах 0,99-0,999.

Обмен сервер — претендент. В [17] показано, что применяемые в настоящее время штатные (встроенные в стандартную поставку современных серверов Windows, RADIUS, TACACS+) протоколы аутентификации, основанные на использовании инфраструктуры открытых ключей, устойчивы к атакам класса "имитация" и "подмена" при длине ключа 256 бит и более. К настоящему времени массовых атак на протоколы аутентификации не зафиксировано. Следовательно, данным видом сбоев, ошибок и отказов будем пренебрегать, т.е. примем К= 1.

На стороне пользователя, по оценкам [18, 19], производятся наиболее критичные операции, самой ненадёжной из которых является процедура п. 2.1 хранения секрета (пароля, ключа подписи). Согласно [16], коэффициент надёжности парольной защиты в зависимости от числа символов пароля колеблется от 0,03 для четырёх символов до 0,83 для 9-символьного пароля. Для грубых оценок примем усредненное значение нижнего коэффициента К = 0,43. Для секрета в виде ключа подписи, сгенерированного внутри чипа смарт-карты или USB-ключа, с учётом документации на сайтах производителей устройств класса SSCD, определим верхнее значение как К = 0,999. Полученные оценки сведены в табл. 2.

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

Для нижней границы с использованием секрета в виде пароля получим Кн = 0,38; для верхней границы с применением в качестве устройств для генерации и хранения ключа подписи внутренний чип микропроцессорных смарт-карт КВ = 0,98.

Заключение. Предложенные в работе способы оценки надёжности удаленной аутентификации представляют несомненный научный и практический интерес. Более того, рассмотренные подходы открывают путь к формированию рекомендаций, а в ряде случаев и требований к уровням аутентификации. В перспективе это позволит увязать требования к уровням аутентификации с требованиями к другим доверенным сервисам, таким как формирование и проверка электронной подписи, штампы времени, сервис онлайн-проверки действия цифровых сертификатов и др. Появление таких требований, а в дальнейшем стандартов, с одной стороны, подтолкнет к созданию единого государственного пространства доверия, а с другой — создаст основу для повышения качества оказываемых услуг и удалённых сервисов.