Сергей Апресов

Текст

WebAuthn — ​это способ аутентификации, который обещает избавить пользователей от необходимости придумывать, запоминать и вводить пароли

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

ЧтО тАкОЕ Webauthn и Рasskey?

Технология сравнительно новая и поддерживается не всеми веб-сайтами, но, скорее всего, вы с ней уже знакомы. Она работает и на портале mos.ru, и в аккаунте Google. Для пользователя все выглядит просто: сайт не запрашивает логин и пароль, а лишь переспрашивает, действительно ли вы хотите войти, и просит разблокировать телефон через пин-код, отпечаток пальца или Face ID.

«Вместо» пароля при этом используется криптографический приватный ключ, который хранится на устройстве пользователя. Кавычки у слова «вместо» очень важны: в отличие от пароля, приватный ключ никогда не пересылается по сети, и технология аутентификации коренным образом ­отличается. Тем не менее, чтобы было понятнее, для чего нужен новый механизм, компания Apple придумала называть приватные ключи словом passkey, похожим на password.

А чЕм ПлОх оБыЧНЫЙ пАРОлЬ?

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

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

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

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

Наконец, люди просто записывают пароли на бумажные стикеры, клеят на монитор, «светят» на селфи в соцсетях, кладут в незапираемые ящики стола и… делают татуировки.

А ЕСли я пОлЬзУюсь меНЕджерОм ПАРОлЕй?

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

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

Кроме того, чтобы воспользоваться менеджером паролей, нужно ввести «мастер-пароль» от него самого. Получается, что для всех своих сервисов пользователь использует один пароль, который он должен хранить максимально бережно. Если умеет.

Поэтому продвинутые менеджеры паролей, например 1Password или SaasPass, вместо «мастер-пароля» предлагают использовать WebAuthn.

Что ПОд кАПОтом у Webauthn?

Работа WebAuthn строится на алгоритмах асимметричной криптографии. Идея, мягко говоря, не нова: в частности, применение таких алгоритмов в целях криптобезопасности с 2013 года координирует и стандартизирует альянс FIDO (Fast IDentification Online).

Почти вся современная криптография строится на асимметричных функциях — ​тех, что легко решаются только «в одном направлении». Классический пример — ​разложение числа на простые множители (факторизация). Компьютер легко перемножит 3969 и 9604, получив 38118276. А вот получить из произведения два исходных числа — ​задача практически непосильная.

Когда пользователь регистрируется на сайте с поддержкой WebAuthn, его устройство (чаще всего смартфон) генерирует два ключа — ​приватный и публичный. Публичный отправляется на сайт и хранится там. Его перехват ничего не даст злоумышленнику. Приватный же никогда не покидает устройство и не попадает в сеть.

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

И чЕм это луЧШЕ?

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

WebAuthn защищен от утечек и сливов. Если злоумышленник украдет данные с какого-либо сервиса, то, во‑первых, он получит только публичные, но не приватные ключи. Во-вторых, это будут данные лишь одного сервиса, а не всех, с которыми имеет дело пользователь.

Технология WebAuthn намного удобнее традиционной пары «логин-пароль» еще и тем, что она не требует двухфакторной идентификации. Ведь в нее зашито сразу два фактора. Первый — ​это фактор владения, который обычно проверяется отправкой СМС или Push-уведомления на смартфон пользователя. А второй — ​фактор знания: он заключается в том, что на устройстве хранится приватный ключ.

Двухфакторная аутентификация через СМС и push-уведомления тоже подвержена фишингу. Именно второй фактор пытаются заполучить телефонные мошенники, которые просят назвать им вслух код из СМС. WebAuthn этого недостатка лишена.

НЕУжЕли Рasskey НИкАк нЕлЬзя ВЗломАть?

Конечно, можно. В частности, с помощью атаки через понижение уровня защиты. Такой эксперимент провели исследователи Швейцарской технической школы Цюриха в 2021 году. Они создали фишинговую страницу, имитирующую сайт Google, и предлагали пользователям войти с помощью USB-ключа (технология, по степени защиты аналогичная WebAuthn). После имитации входа страница предлагала ввести код из СМС. Пользователи воспринимали это как дополнительную меру защиты и вводили данные. Злоумышленники же в это время на настоящем сайте Google запрашивали альтернативный вариант входа «в связи с утерей ключа». В результате эксперимента на удочку попались 55 % атакованных пользователей. Исследователи считают, что в реальной жизни доля успешных атак приблизилась бы к 90 %.

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

А ЕСли у меНя мНОГО ГАджЕтОВ?

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

Но что делать, когда требуется однократно зайти на сайт с чужого компьютера или смартфона? Для этого есть способ аутентификации через QR-код. К примеру, вы хотите зайти на mos.ru с компьютера друга. Сайт покажет вам QR-код, и его нужно будет отсканировать собственным смартфоном — ​тем, который хранит ваш приватный ключ. Далее компьютер друга и ваш смартфон обменяются сигналами по беспроводному интерфейсу и убедятся, что они находятся физически близко друг к другу. Только в этом случае смартфон сообщит сайту, что компьютеру друга следует предоставить доступ.

РАз всЕ тАк ­хОРОШо, ­ПОчЕму лЮди ПОлЬзУются пАРОлями?

Первый стандарт WebAuthn Level 1 появился в 2019 году, и его сразу поддержали ключевые браузеры: Google Chrome, Microsoft Edge, Apple Safari, Mozilla Firefox и Opera. По меркам интернет-протокола это очень молодая технология, хотя многообещающая: гиганты Microsoft, Google и Apple интегрировали ее в свои операционные системы и активно продвигают на рынке.

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

На специализированном сайте passkeys.directory фигурирует около 170 сайтов, поддерживающих WebAuthn. Но это далеко не полный список. К примеру, из сайтов в зоне.ru там есть только Yandex. Технология WebAuthn выигрывает у паролей практически по всем параметрам. А значит, в ближайшие годы мы, скорее всего, забудем слово password как страшный сон.

Читайте также, что делать, если забыли пароль от Wi-Fi:

Использованные источники: Материал опубликован в журнале «Цифровой океан» № 24 (июль-август), 2024, Paul Taylor / Stone / Getty Images, ELIJAH NOUVELAGE / AFP via Getty Images, RayaHristova / iStock.com, Andres Victorero / iStock.com, Tero Vesalainen / iStock.com, vinnstock / iStock.com, deepblue4you / iStock.com, golubovy / iStock.com, ymgerman / iStock.com