Во время написания своей диссертации по защите информации, посвященной разработке нового алгоритма аутентификации, передо мной встала задача классифицировать существующие механизмы аутентификации, чтобы можно было определить к какому классу относится моя разработка.
Я столкнулся с тем, что никакой общепринятой классификации нет, и у каждого автора она своя, если она вообще есть. Поэтому я предлагаю вам свою классификацию, синтезированную из тех что встретил в процессе работы. И хотел бы услышать мнение экспертов, насколько она рациональна, адекватна и полезна. А главное не слышали ли вы её где-нибудь раньше?
Проведя анализ существующих механизмов аутентификации я выделил 3 основных характеристики, которыми обладает каждый из них:
Степень автоматизации может быть полной, либо неполной. Имеется ввиду автоматизация аутентификации со стороны системы, а не пользователя. Т.е. система аутентификации на хабре полностью автоматизирована, а система аутентификации с помощью домофона, не полностью, т.к. для аутентификации гостя необходимо вмешательство хозяина.
Приоритет использования — это то в каком порядке пользователь пользуется данным способом аутентификации.
Основной метод аутентификации Как видно из названия этот метод используется для штатного входа в систему. Самый распространённый из них — вход по паролю, использующийся в подавляющем большинстве компьютерных систем. Менее распространённым способом является использование аппаратных идентификаторов, на которые записываются ключи доступа или пользовательские пароли.
Также в корпоративном секторе популярна двухфакторная аутентификация. Как правило, под этим понимается связка из е-токена и пин-кода вводимого пользователем, но встречаются и более экзотические сочетания, состоящие из биометрического сканера и аппаратного идентификатора или пользовательского пароля.
Резервный метод аутентификации В случае потери пароля или е-токена, либо взлома учётной записи в силу вступают резервные методы аутентификации. Впрочем, это не столько методы аутентификации, сколько механизмы сброса пароля.
Наиболее распространены два метода: ответ на «секретный вопрос» и отправка пароля на доверенный почтовый ящик, указанный при регистрации. Эти методы входят в джентельменский набор любого, уважающего себя, информационного сервиса.
Есть много интересных модификаций данного способа аутентификации. Например, одним из первых было предложение использовать собственные «секретные вопросы». Что было, практически немедленно реализовано у ведущих провайдеров.
Так же можно привести пример продвинутой системы резервной аутентификации основанной на вопросах из базы онлайн знакомств. Таких вопросов много, они просты сами по себе, но в совокупности по ним можно достаточно чётко представить себе характер человека. При обращении система задаёт часть вопросов, из тех на которые пользователь ответил при регистрации, если он сумеет правильно ответить на большинство из них, то аутентификация считается успешной.
Очень похожая идея была описана в недавних работах. Обе они пытались встроить аутентификацию на основе множества простых «секретных вопросов» в PKI архитектуру. И если в первой работе Ренди Баден, Нил Спринг и Боби Бхатачарджи пытались сгенерировать общий ключ шифрования для двух друзей на основе ответов на такие «секретные вопросы», составленные пользователями, то во второй работе в качестве второго пользователя выступал сервер авторизации с базой персональных данных.
Есть не менее оригинальные идеи о использовании пользовательской информации, например, все знают каптчу (и то, какой надоедливой она может быть): трудночитаемые сочетания букв и цифр, которые приходится вводить для того, чтобы, скажем, завершить регистрацию. И хотя, её задача заключается в защите информационных сервисов, от вездесущих ботов, инженеры Facebook решили скрестить её с «секретными вопросами» и использовать в качестве резервной системы аутентификации. Не та давно на Facebook ввели Social Authentication, что является в корне неверным названием. Пользователю демонстрируется несколько фотографий его друзей, и тот должен правильно ввести имена друзей.
Как было сказано в начале, вторым способом является отсылка пароля на доверенный почтовый ящик. Вообще, концепция перекладывания ответственности за аутентификацию человека с одной стороны на другую не нова. Аутентификация пользователей через альтернативный адрес электронной почты перекладывает ответственность по аутентификации на провайдера, того альтернативного адреса. Следует добавить, что так как ящик является не основным, то используется он реже, а потому вероятность забыть пароль или ответ на «секретный вопрос» становится гораздо выше. Правда, с тех пор как количество проданных в России сотовых телефонов превысило её общее население, у многих провайдеров появилась возможность отправлять новые пароли с помощью sms сообщений. Впервые эта система была использована банками для дополнительной аутентификации транзакций, после чего доказав свою эффективность, была перенята другими интернет сервисами. Но и у такой системой есть свои недостатки, свойственные всем аппаратным идентификаторам. Телефоны очень часто теряются, воруются или ломаются. Например, в статье 2008 года, сообщается о том, что только в нью-йоркских такси ежегодно забывается более 60 000 мобильных аппаратов.
last-resort механизм («последней инстанции») Несмотря на все минусы и слабости таких механизмов резервного восстановления доступа к учётным записям, ведущие интернет компании вынуждены ими пользоваться, ведь альтернативой этому является использование «last-resort» аутентификации, что можно перевести как аутентификация «последней инстанции», то есть механизма, к которому прибегают в самых крайних случаях, когда все остальные способы оказались бессильны. В данный момент это означает обращение к администраторам информационных систем, либо в специальные отделы поддержки клиентов, а это непомерно дорого если учесть, что всего у двух крупнейших почтовых провайдеров количество активных пользователей в год превышает миллиард. Но даже такие отделы практически беззащитны перед социальной инженерией, о чём писал ещё легендарный хакер Кевин Митник в 2002 году в своей книге. Он справедливо указывает, что человек будет являться самым слабым звеном даже в самой сложной системе защиты.
Используемый фактор аутентификации — аутентификация представляет из себя процесс сравнения информации, предоставляемой пользователем, с эталонной. В зависимости от типа информации её можно отнести к одному из четырёх основных факторов, либо к их комбинации.
Фактор знания — «то, что ты знаешь».
Первый и самый распространённый на данный момент механизм аутентификации, ввод чего-либо, что известно только пользователю, например, пароля или ответа на секретный вопрос. Теоретически, это самый простой и безопасный метод проверки подлинности, так как он обладает достаточной криптостойкостью, его просто и дешево реализовать, а всё что нужно от пользователя, так это запомнить 8-12-ти символьную комбинацию из букв, цифр и различных знаков. Однако, на практике всё совершенно иначе.
Во-первых пользователи, как правило, задают слабые пароли, что связано с самой физиологией человека, точнее его
1. Люди не стали задавать более сложные пароли с тех пор.
2. Согласно «закону Мура» вычислительные мощности компьютеров с тех пор выросли более чем в 16 тысяч раз.
Конечно, с тех пор проведено множество исследований и на их основе предложено немало систем построения сложных паролей на основе мнемонических фраз. Но в процентном отношении, мало кто ими пользуется.
К тому же, несмотря ни на какие чудо-системы, с ростом сложности пароля он всё труднее для запоминания. Исследование SafeNet от 2004 года обнаружило, что 47 % респондентов забывали свои пароли в течение года. А с ростом количества учётных записей от различных компьютерных систем, которых с каждым годом становится всё больше, ситуацию ещё более усугубляется. Способность помнить пароли была изучена в лаборатории Ву в 2007 году. После первой недели 12.5 % участников забыли их шестисимвольные буквенно-цифровые пароли. Из участников, которые должны были помнить пароли о пяти учетных записей, 25 % забыли по крайней мере один.
Кроме того, с увеличением сложности паролей увеличивается и количество ошибок при его вводе. Например, Бростофф и Сэйсс заметили, что разрешение на ввод до десяти неправильных паролей подряд уменьшает количество запросов на их сброс. Собственно, после этого исследования многие компании скорректировали свои парольные политики.
Но даже это не самое страшное. Исследование, проведённое Джоном Лейдоном в 2003 году, выявило пугающую склонность офисных работников сообщать свои пароли незнакомцам за символическую плату. В исследовании приняло участие 152 человека. Им была задана серия вопросов, один из которых просил указать пароль пользователя, и 75% опрошенных немедленно его назвали. Они раскрыли свой пароль в обмен на безделушку стоимостью меньше одного фунта стерлингов.
Следующий по распространённости механизм аутентификации обычно используют если пароль всё-таки утерян. Тогда пользователя просят ответить на так называемый «секретный вопрос», ответ на который он указал при регистрации учётной записи. Именно такая система используется у 4 ведущих почтовых провайдеров AOL, Google (Gmail), Microsoft (Hotmail), и Yahoo!..
Однако, криптостойкость подобных «вопрос и ответов», выбираемых пользователями, ещё меньше, чем у выбираемых ими паролей. В 2009 году на конференции IEEE Security and Privacy был опубликован доклад о исследовании, в котором приняло участие 130 человек. Результаты показали, что чуть менее трети испытуемых – 28 процентов – смогли «угадать» ответ на секретный пароль, в случае если близко знали своего оппонента. Если же оппонент был полностью незнаком, то ответ на вопрос угадали 17 процентов испытуемых. Впрочем, конечный результат во многом зависит от сложности поставленного вопроса. Например, вопрос о любимой команде пользователя или его любимом городе не станет большой проблемой в 30 и 57 процентах случаев соответственно. Но даже на вопросы личного характера – город рождения, или кличка домашнего питомца – взломщик дает правильный ответ в 45 и 40 процентов случаев соответственно. Кроме того, по прошествии от 3-х до 6-ти месяце 49 участников попросили вспомнить свои ответы, 16% их забыли. Ранее в 2008 году Ариель Рабкин провёл похожее исследование, гласящее что многие из «секретных вопросов» были или не применимыми к более чем 15 % широкой публики, незапоминающимися, неоднозначными, легко отгадываемыми даже при отсутствии информации о жертве, либо легко отгадываемыми с минимальным знанием жертвы. Аналогичные работы проходили и ранее в 1996-м и в 1990-м годах. Они тоже исследовали способность запоминать и угадывать ответы на «секретные вопросы». И показали похожие результаты, а именно: супруги и близкие друзья могли угадать 33%-39% ответов, а 20%-22% забыли свои ответы в течение 3-х месяцев.
Интересная работы была опубликована в позапрошлом году. Её целью было выяснить криптостойкость ответов на «секретные вопросы» сами по себе. С этой целью авторы собрали огромную базу данных (порядка 269 млн.) имён, фамилий, кличек домашних животных, дат и мест рождения пользователей. При анализе этих данных выяснилось, впрочем меня это не удивило, что они подчиняются распределению Ципфа, частным случаем которого является «закон Парето», т.е. на 20% имён и дат приходилось 80% пользователей. В результате, оказалось, что криптостойкость ответов на данные «секретные вопросы» соответствует криптостойкости ключа шифрования длинной от 8 до 23 бит, в зависимости от распространённости конкретного имени или фамилии.
В 2005 году В. Гриффин и М. Якобсон провели исследование выявившее, что ответы на самые популярные «секретные вопросы» можно найти в открытых источниках. Что блестяще подтвердилось на практике в 2008 году во время президентских выборов в США, когда с помощью «секретного вопроса» была взломана учётная запись Сары Пэйлин, кандидата от республиканцев.
Вещественный фактор — «то, чем ты владеешь». Второй по популярности фактор аутентификации. В первую очередь под этим понимаются аппаратно-программные системы идентификации и аутентификации (СИА) или устройства ввода идентификационных признаков. В состав СИА входят аппаратные идентификаторы, устройства ввода-вывода (считыватели, контактные устройства, адаптеры, разъемы системной платы и др.) и соответствующее ПО. Идентификаторы предназначены для хранения уникальных идентификационных признаков. Кроме этого они могут хранить и обрабатывать конфиденциальные данные. Устройства ввода-вывода и ПО осуществляют обмен данными между идентификатором и защищаемой системой.
В электронных СИА идентификационные признаки представляются в виде цифрового кода, хранящегося в памяти идентификатора. По способу обмена данными между идентификатором и устройством ввода-вывода электронные СИА подразделяются на:
• контактные:
o iButton — information button — информационная «таблетка»;
o смарт-карты — интеллектуальные карты;
o USB-ключи или USB-токены (token — опознавательный признак, маркер);
• бесконтактные:
o RFID-идентификаторы — radio-frequency identification — радиочастотные идентификаторы;
o смарткарты.
Контактное считывание подразумевает непосредственное соприкосновение идентификатора с устройством ввода-вывода. Бесконтактный (дистанционный) способ обмена не требует четкого позиционирования идентификатора и устройства ввода-вывода. Чтение или запись данных происходит при поднесении идентификатора на определенное расстояние к устройству ввода-вывода.
СИА на базе смарт-карт и радиочастотных идентификаторов можно отнести по времени их создания к старшему, iButton — к среднему, а USB-ключей — к младшему поколению.
При обсуждении надежности СИА обычно рассматривают самое важное и в то же время самое слабое звено системы — идентификатор. В свою очередь, надежность идентификаторов связывают со степенью их защищенности от механических воздействий, влияния температуры, внешних электромагнитных полей, агрессивных сред, пыли, влаги, а также от атак, направленных на вскрытие чипов, хранящих секретные данные.
Разработчики идентификаторов iButton обеспечивают сохранность характеристик своих изделий при механическом ударе 500g, падении с высоты 1,5 м на бетонный пол, рабочем диапазоне температур от -40 до 70°С, воздействии электромагнитных полей и атмосферы. Этому способствует герметичный стальной корпус идентификатора, сохраняющий прочность при миллионе контактов с устройством ввода-вывода. Память некоторых идентификаторов (DS1991, DS1963S) защищена от доступа. Срок эксплуатации идентификатора iButton составляет 10 лет.
К недостаткам СИА на базе iButton следует отнести отсутствие встроенных в идентификаторы криптографических средств, реализующих шифрование данных при их хранении и передаче в компьютер. Поэтому iButton обычно используется совместно с другими системами, на которые возлагаются функции шифрования.
Конечно, по степени механической надежности радиочастотные идентификаторы, смарт-карты и USB-ключи уступают iButton. Пластику соревноваться со сталью трудно. Выход из строя карты вследствие механических повреждений является не таким уж редким событием. Проводившиеся в ходе реализации французского проекта GIE Carte Bancaire десятилетние исследования над 22 миллионами карт показали, что вероятность их отказа по ряду причин (куда также входят механические повреждения) составляет 0,022.
«Узким» местом USB-ключей является и ресурс их USB-разъемов. Разработчики данных идентификаторов даже включают этот показатель в технические спецификации изделий. Например, для идентификаторов семейства eToken гарантированное число подключений составляет не менее 5000 раз.
Достоинство радиочастотных идентификаторов, смарт-карт и USB-ключей состоит в том, что в их состав входят защищенная энергонезависимая память и криптографический процессор, позволяющие повысить уровень защиты устройств. Однако и атакующая сторона не дремлет, придумывая разнообразные способы вскрытия секретной информации.
Опубликовано множество работ, в которых описываются разнообразные атаки на чипы идентификаторов. Эти исследования носят как теоретический, так и практический характер. К теоретическим методам вскрытия относят, в частности, атаки Bellcore, дифференциальный анализ искажений DFA (Differential Fault Analysis) и питания DPA (Differential Power Analysis). К практическим методам можно отнести глитчинг (glitching) и физические атаки, направленные на распаковку чипа и извлечение необходимой информации.
Разработчики криптографических процессоров стремятся по мере возможности адекватно реагировать на атаки с помощью разнообразных механизмов внешней и внутренней защиты. К механизмам внешней защиты относят установку датчиков (емкостный либо оптический сенсор), покрытие чипа металлическим слоем, специальными клеями и т. д., к внутренним — шифрование шины, случайное тактирование, проведение повторных вычислений, генерирование шума.
В общем, из-за стоимости аппаратных идентификаторов, они применяются в основном в бизнесе, там где требуются удобство, надёжность и высокая криптостойкость. Основных минуса всего два: их можно отнять или потерять и они могут сломаться.
Биофактор — «то, что является частью тебя». Биометрические данные, для снятия которых, как правило, необходимы специальные программно-аппаратные средства — так называемые, биометрические сканеры, которые различаются по характеру считываемых данных.
Биометрические сканеры, основанные на статических методах:
• Распознавание по отпечаткам пальцев. Это — самый распространенный статический метод биометрической идентификации, в основе которого лежит уникальность для каждого человека рисунка папиллярных узоров на пальцах. Изображение отпечатка пальца, полученное с помощью специального сканера, преобразуется в цифровой код (свертку) и сравнивается с ранее введенным шаблоном (эталоном) или набором шаблонов;
• Распознавание по геометрии руки. Данный статический метод построен на распознавании геометрии кисти руки, также являющейся уникальной биометрической характеристикой человека. С помощью специального устройства, позволяющего получать трехмерный образ кисти руки (некоторые производители сканируют форму нескольких пальцев), получаются измерения, необходимые для получения уникальной цифровой свертки, идентифицирующей человека;
• Распознавание по радужной оболочке глаза. Этот метод распознавания основан на уникальности рисунка радужной оболочки глаза. Для реализации метода необходима камера, позволяющая получить изображение глаза человека с достаточным разрешением, и специализированное программное обеспечение, позволяющее выделить из полученного изображения рисунок радужной оболочки глаза, по которому строится цифровой код для идентификации человека.
Биометрические сканеры, основанные на динамических методах:
• Распознавание по рукописному почерку. Как правило, для этого динамического метода идентификации человека используется его подпись (иногда написание кодового слова). Цифровой код идентификации формируется по динамическим характеристикам написания, то есть для идентификации строится свертка, в которую входит информация по графическим параметрам подписи, временным характеристикам нанесения подписи и динамики нажима на поверхность в зависимости от возможностей оборудования (графический планшет, экран карманного компьютера и т. д.);
• Распознавание по клавиатурному почерку. Метод в целом аналогичен вышеописанному, однако вместо подписи в нем используется некое кодовое слово, а из оборудования требуется только стандартная клавиатура. Основная характеристика, по которой строится свертка для идентификации, — динамика набора кодового слова;
• Распознавание по голосу. В настоящее время развитие этой одной из старейших технологий ускорилось, так как предполагается ее широкое использование при сооружении интеллектуальных зданий. Существует достаточно много способов построения кода идентификации по голосу: как правило, это различные сочетания частотных и статистических характеристик последнего.
В целом для многих из перечисленных методов необходимо достаточно дорогое оборудование и не менее дорогое ПО. Есть достаточно неплохие разработки в этой области, но они ещё не скоро станут таким же стандартом как и выше перечисленные методы. Более того, с развитием технологий роль биометрии как средства аутентификации будет уменьшаться, так как получить злоумышленнику доступ к таким данным становится всё проще. Голос можно записать, лицо и глаза сфотографировать, а отпечатки пальцев отсканировать. Затем создать компьютерную модель, и распечатать маску на 3D принтере. В итоге биометрия станет в большей степени средством идентификации.
Социальный фактор — «те, кто тебя знают». В качестве последнего фактора можно использовать кого-то кто вас знает, ну конечно не вас, а легального пользователя. Такую систему можно назвать основанной на доверенной аутентификации. Например, в организациях ответственность за аутентификацию пользователя, который забыл или потерял пароль, часто перекладывается на системного администратора, службу безопасности, или другой технический персонал. Microsoft долго использовала форму восстановления учетной записи, основанную на доверенной стороне, для её собственных сотрудников: если сотрудник забывал свои учетные данные, его менеджер или коллеги могли запросить временный пароль от его имени. Такой механизм, по определению, требует вмешательства другого человека, и применим, зачастую, в небольших системах малых и средних компаний, где администратор системы может выкроить время для генерации нового пароля. В больших компаниях и корпорациях, существуют целые отделы, занимающиеся подобными проблемами. А потому, такой способ аутентификации является в настоящее время одним из самых затратных. Однако, Facebook является пионером в данной области. Они первые кто внедрил автоматизированную систему социальной аутентификации, под названием «доверенный друзья», чем наверняка сэкономили кучу денег на тех поддержке.
Надеюсь, кому-то данная статья покажется полезной.
Автор: malan