Метод получил название аутентификации без пароля (Password Less Authentication, PLA). Он предполагает сбор аутентификационных данных в Интернете, а также в сотовых сетях и их последующее объединение. Это позволяет полностью идентифицировать лицо, которое пытается осуществить вход, как пояснил автор метода Срикар Саги, в свое время разработавший архитектуру защиты для PayPal.
PLA помогает устранить ряд недостатков других сценариев двухфакторной аутентификации посредством сотовых телефонов. В частности, речь идет о тех, в которых с безопасного сайта на сотовый телефон пользователя посылается SMS-сообщение с одноразовым паролем. Пароль затем вводится в специальное поле на странице аутентификации.
Недостаток метода в том, что злоумышленники уже разработали программу-троянец, перехватывающую такие сообщения и направляющую их на сотовые телефоны злоумышленников, и те получают возможность зайти от имени пользователя.
Заходя, например, на сайт с поддержкой PLA, пользователи вводят свой логин и PIN-код, связанный с PLA-сервером по Интернету. Затем в фоновом режиме и прозрачно для пользователя происходит второй этап взаимодействия между PLA-приложением телефона и PLA-сервером. Если результат положительный, то выполняется вторая итерация процесса, в ходе которой идентифицируется пользователь, знающий логин и пароль и имеющий данный сотовый телефон, и происходит регистрация на данном сайте.
В данном случае для получения доступа к аккаунту злоумышленнику нужно знать логин пользователя, пароль и иметь в своем распоряжении его телефон. Вероятность этого достаточно мала, если учесть, что нужно не только завладеть логином жертвы, но и выкрасть у нее телефон.
Саги планировал представить PLA на конференции, посвященной безопасности мобильной связи TakeDownCon, но впоследствии отказался от выступления.
Саги признал, что планы по коммерческой реализации PLA пока не определены.
Объяснение принципов действия метода аутентификации без одноразовых паролей
- Пользователь заходит на сайт интернет-банкинга с помощью веб-браузера, и ему предлагается зарегистрироваться с помощью PLA. Пользователь вводит логин, пароль и номер сотового телефона. Сотовый телефон получает приглашение загрузить мобильное приложение PLA. После установки оно захватывает международный идентификатор мобильного абонента (IMSI) и серийный номер SIM-карты (ICCID).
- Пользователь входит в приложение с теми же именем пользователя и паролем, что и на сайт, и приложение посылает информацию о IMSI и ICCID в зашифрованном виде на PLA-сервер. Этот сервер формирует AppID с использованием алгоритма, учитывающего IMSI и ICCID, который, в свою очередь, направляется на телефон пользователя зашифрованным с помощью открытого ключа сервера.
- После этого всякий раз, когда пользователь заходит на данный сайт со своим именем пользователя и паролем, сайт выдает так называемый запрос Request Challenge-1 — набор цифр, который направляется на PLA-сервер. Пользователь вводит этот набор в мобильное приложение PLA и получает доступ к защищенной части сайта.
- В фоновом режиме от сервера на телефон посылается СМС со вторым запросом — Challenge-2.
- Мобильное приложение PLA создает хэш, используя Challenge-1, Challenge-2, а также AppID, IMSI и ICCID посредством считывания непосредственно с телефона. Приложение шифрует хэш и посылает полученное значение на сервер.
- На сервере, независимо от мобильного приложения, создается хэш с теми же значениями из базы данных, которые сравниваются с созданными на телефоне. Если значения совпадают, пользователь получает доступ к веб-странице.