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

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

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

Что такое аутентификация?

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

Почему важна аутентификация пользователя?

Аутентификация пользователя — это метод, который не позволяет неавторизованным пользователям доступ к конфиденциальной информации. Например, пользователь A имеет доступ только к соответствующей информации и не может видеть конфиденциальную информацию пользователя B.

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

В период с 2012 по 2016 год хакеры получили доступ к учетным записям пользователей Yahoo для кражи контактов, календарей и личных писем. В результате утечки данных Equifax в 2017 году были обнаружены данные кредитных карт более 147 миллионов потребителей. Без безопасного процесса аутентификации любая организация может оказаться под угрозой.

5 распространенных типов аутентификации

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

1. Аутентификация на основе пароля

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

Однако пароли подвержены фишинговым атакам и плохой гигиене, что снижает эффективность. В среднем у человека около 25 различных учетных записей в Интернете, но только 54% ​​пользователей используют разные пароли для своих учетных записей.

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

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

2. Многофакторная аутентификация

Многофакторная аутентификация (MFA) — это метод аутентификации, который требует двух или более независимых способов идентификации пользователя. Примеры включают коды, сгенерированные со смартфона пользователя, тесты Captcha, отпечатки пальцев или распознавание лиц.

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

3. Аутентификация на основе сертификатов

Технологии аутентификации на основе сертификатов идентифицируют пользователей, машины или устройства с помощью цифровых сертификатов. Цифровой сертификат — это электронный документ, основанный на водительских правах или паспорте.

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

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

4. Биометрическая аутентификация

Биометрическая аутентификация — это процесс безопасности, основанный на уникальных биологических характеристиках человека. Вот основные преимущества использования технологий биометрической аутентификации:

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

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

  • Распознавание лица — сопоставление различных характеристик лица человека, пытающегося получить доступ к утвержденному лицу, хранящемуся в база данных. Распознавание лиц может быть непоследовательным при сравнении лиц под разными углами или сравнении людей, которые похожи друг на друга, например, близких родственников. Технология живости лица предотвращает спуфинг.
  • Сканеры отпечатков пальцев — позволяют сопоставить уникальные узоры на отпечатках пальцев человека. Некоторые новые версии сканеров отпечатков пальцев могут даже оценивать сосудистые паттерны на пальцах людей.. Сканеры отпечатков пальцев в настоящее время являются самой популярной биометрической технологией для обычных потребителей, несмотря на их частые неточности. Такую популярность можно отнести к iPhone.
  • Голосовая идентификация — исследует речевые модели говорящего на формирование определенных форм и звуковых качеств. Устройство с голосовой защитой обычно использует стандартные слова для идентификации пользователей, точно так же, как пароль.
  • Сканеры глаза — включают такие технологии, как распознавание радужной оболочки глаза и сканеры сетчатки. Сканеры радужной оболочки глаза проецируют яркий свет на глаз и ищут уникальные узоры в цветном кольце вокруг зрачка глаза. Затем шаблоны сравниваются с утвержденной информацией, хранящейся в базе данных. Аутентификация на основе глаз может иметь неточности, если человек носит очки или контактные линзы.

5. Аутентификация на основе токенов

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

Заключение

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

——————–

Биография автора

Гилад Дэвид Мааян — технический писатель, который работал с более чем 150 технологическими компаниями, включая SAP, Samsung NEXT, NetApp и Imperva, создавая технические и контент для интеллектуальных лидеров, разъясняющий технические решения для разработчиков и руководителей ИТ.

LinkedIn: https://www.linkedin.com/in/giladdavidmaayan/



HTTP-аутентификация

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

Общая структура аутентификации HTTP

RFC 7235 определяет структуру аутентификации HTTP, которая может использоваться сервером для вызова запроса клиента и клиентом для предоставления информации аутентификации..

Поток запроса и ответа работает следующим образом:

  1. Сервер отвечает клиенту 401 (Неавторизованный) статус ответа и предоставляет информацию о том, как авторизоваться с помощью заголовка ответа WWW-Authenticate , содержащего хотя бы один запрос.
  2. Клиент, который хочет пройти аутентификацию с сервером можно сделать это, включив заголовок запроса Authorization с учетными данными.
  3. Обычно клиент представляет пользователю запрос пароля, а затем выдает запрос, содержащий правильный заголовок Authorization .

В случае «базовой» аутентификации, как показано на рисунке, обмен должен происходить через HTTPS (TLS) соединение, чтобы быть безопасным.

Проверка подлинности прокси

Тот же механизм запроса и ответа может использоваться для проверки подлинности прокси . Поскольку аутентификация ресурсов и аутентификация прокси могут сосуществовать, необходим другой набор заголовков и кодов состояния. В случае прокси-серверов сложным кодом состояния является 407 (требуется проверка подлинности прокси), заголовок ответа Proxy-Authenticate содержит как минимум один запрос, применимый к прокси, а заголовок запроса Proxy-Authorization используется для предоставления учетных данных прокси-серверу.

Доступ запрещен

Если (прокси) сервер получает действительные учетные данные, которые не подходят для доступа к данному ресурсу, сервер должен ответить 403 Forbidden код> код состояния. В отличие от 401 Unauthorized или 407 Proxy Authentication Required , аутентификация для этого невозможна пользователя.

Аутентификация изображений из разных источников

Потенциальная дыра в безопасности, недавно исправленная браузерами, — это аутентификация межсайтовых изображений. Начиная с Firefox 59 и далее, ресурсы изображений, загруженные из разных источников в текущий документ, больше не могут запускать диалоговые окна HTTP-аутентификации (ошибка 1423146), предотвращая кражу учетных данных пользователя, если злоумышленники смогли встроить произвольное изображение на стороннюю страницу.

Кодировка символов HTTP-аутентификации

Браузеры используют кодировку utf-8 для имен пользователей и пароли.

Firefox когда-то использовал ISO-8859-1 , но был изменен на utf-8 для обеспечения равенства с другими браузерами и чтобы избежать потенциальных проблем, как описано в ошибке 1419658.

Заголовки WWW-Authenticate и Proxy-Authenticate

Код WWW-Authenticate и Proxy-Authenticate определяют метод аутентификации, который следует использовать для получения доступа к ресурсу.. Они должны указать, какая схема аутентификации используется, чтобы клиент, желающий авторизоваться, знал, как предоставить учетные данные.

Синтаксис этих заголовков следующий:

  WWW-Authenticate: realm => Proxy-Authenticate: realm =>  

Здесь — аутентификация схема («Базовая» — наиболее распространенная схема, представленная ниже). Область используется для описания защищенной области или для обозначения объема защиты. Это может быть сообщение типа «Доступ к промежуточному сайту» или подобное, чтобы пользователь знал, к какому пространству он пытается получить доступ.

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

  Авторизация:> Прокси-авторизация:>  

Схемы аутентификации

Общая структура аутентификации HTTP используется несколько схем аутентификации. Схемы могут различаться по уровню безопасности и доступности в клиентском или серверном программном обеспечении.

Наиболее распространенной схемой аутентификации является «Базовая» схема аутентификации, которая более подробно описана ниже. IANA ведет список схем аутентификации, но есть и другие схемы, предлагаемые хост-сервисами, например Amazon AWS. Общие схемы аутентификации включают в себя:

См. RFC 7617, учетные данные в кодировке base64. Подробнее см. Ниже.
См. RFC 6750, токены-носители для доступа к ресурсам, защищенным OAuth 2.0
Digest
См. RFC 7616, в Firefox поддерживается только хеширование md5, см. ошибку 472823 для поддержки шифрования SHA
HOBA
См. RFC 7486, раздел 3, H TTP O rigin- B ound A аутентификация, основанная на цифровой подписи
Mutual
См. RFC 8120
См. документацию AWS

Схема базовой аутентификации

«Базовая» схема аутентификации HTTP определена в RFC 7617, которая передает учетные данные в виде пар идентификатора пользователя и пароля. , закодированный с использованием base64.

Безопасность базовой аутентификации

Поскольку идентификатор пользователя и пароль передаются по сети в виде открытого текста (это кодировка base64, но base64 — это обратимая кодировка), базовая схема аутентификации небезопасна . HTTPS/TLS следует использовать с базовой аутентификацией. Без этих дополнительных улучшений безопасности базовую аутентификацию не следует использовать для защиты конфиденциальной или ценной информации..

Ограничение доступа с помощью Apache и базовой аутентификации

Чтобы защитить паролем каталог на сервере Apache, вам понадобится .htaccess и файл .htpasswd .

Файл .htaccess обычно выглядит так это:

 AuthType BasicAuthName "Доступ к промежуточному сайту" AuthUserFile/path/to/.htpasswdRequire valid-user 

.htaccess ссылается на файл .htpasswd , в котором каждая строка состоит из имени пользователя и пароля, разделенных двоеточием (: ). Вы не можете увидеть фактические пароли, поскольку они хешируются (в данном случае с использованием хеширования на основе MD5). Обратите внимание, что вы можете назвать свой файл .htpasswd по-другому, если хотите, но помните, что этот файл не должен быть доступен никому. (Apache обычно настроен для предотвращения доступа к файлам .ht * ).

 aladdin: $ apr1 $ ZjTqBB3f $ IF9gdYAGlMrs2fuINjHsz.user2: $ apr1 $ O04r.y2H  $/vEkesPhVInBByJUkXitA/

Ограничение доступа с помощью nginx и базовой аутентификации

Для nginx вам нужно будет указать местоположение, которое вы будут защищать, и директива auth_basic , которая предоставляет имя защищенной паролем области. Затем директива auth_basic_user_file указывает на файл .htpasswd , содержащий зашифрованные учетные данные пользователя, как в примере с Apache выше.

 местоположение/статус {auth_basic «Доступ к промежуточному сайту»;  auth_basic_user_file/etc/apache2/.htpasswd;}

Доступ с использованием учетных данных в URL-адресе

Многие клиенты также позволяют избежать запрос входа в систему с использованием закодированного URL-адреса, содержащего имя пользователя и пароль, например:

 https://имя пользователя: password@www.example.com/

Использование этих URL-адресов не рекомендуется . В Chrome часть username: password @ в URL-адресах даже исключена из соображений безопасности. В Firefox проверяется, действительно ли сайту требуется аутентификация, и если нет, Firefox предупредит пользователя сообщением «Вы собираетесь войти на сайт« www.example.com »с именем пользователя« username », но веб-сайт не требует аутентификации. Это может быть попыткой вас обмануть. «

  • WWW-Authenticate
  • Авторизация
  • Прокси- авторизация
  • Proxy-Authenticate
  • 401 , 403 , 407
Оцените статью
clickpad.ru
Добавить комментарий