По материалам Android Central
Если говорить совсем коротко, то если сервис предлагает вам воспользоваться опцией с двухфакторной аутентификацией, но ей не нужно пренебрегать. Лучшего способа предупреждения кражи аккаунта пока не придумали. Неважно, кто вы и что за данные храните в сети, если вы хотите их защитить от кражи, то нужно при любой возможности пользоваться именно двухфакторной аутентификацией. Она работает как на самом бюджетном Android-смартфоне, так и на топовой версии iPhone. Но об этом уже, наверное, все слышали.
Но не все слышали о том, что между различными способами двухфакторной аутентификации есть существенная разница. Это как системы распознавания лица — вроде бы принцип у всех одинаковый, но скорость работы, устойчивость к обману и общая надежность очень разные. При этом, как обычно, самые быстрые и удобные для пользователя схемы являются и самыми ненадежными.
Давайте посмотрим, какие способы двухфакторной аутентификации существуют и какие у них есть за и против.
4. Двухфакторная аутентификация с помощью SMS
Получение текстовых сообщений для подтверждения входа в аккаунт — самый распространенный способ. А заодно и худший из возможных.
Принцип прост. Вы сообщаете сервису свой телефонный номер, когда создаете аккаунт. После подтверждения этого номера каждый раз при входе в сервис вы будете получать SMS, которая позволит подтвердить, что вы — это вы. Все предельно просто и удобно, поэтому большинство компаний предлагают именно такой способ защиты пользовательских данных.
Удобство использования и простота системы — это прекрасно, но во всем остальном рассылка SMS не очень надежна. Начнем с того, что пересылку SMS никогда не создавали как систему обеспечения безопасности, а сама эта система стандартизирована и не может быть изменена сервисом. Так что даже такие насквозь зашифрованные сервисы для параноиков, как Signal, пересылают SMS-сообщения в виде открытого текста. Нейтан Колье (Nathan Collier), ведущий аналитик по вредоносному ПО в Malwarebytes, описывает SMS так:
Короткие текстовые сообщения SMS, которые пересылаются и хранятся на серверах в открытом виде, могут быть перехвачены при передаче. Более того, возможна пересылка SMS на неверный номер. А даже если она и приходит к нужному абоненту, то от него сервис не получает информации ни о том, было ли сообщение прочитано, ни даже о том, было ли вообще получено.
Еще большую проблему представляет тот факт, что операторы могут (и такое действительно случалось) быть обмануты в ходе авторизации новой SIM-карты с использованием чужого телефона. Если кто-то захочет получить доступ к вашему банковскому счету или накупить вещей с вашей кредитки в онлайн-магазине, то все, что ему нужно, так это убедить представителя вашего оператора в том, что он — это вы, вы потеряли свой телефон и ваш номер надо переписать на новую SIM карту.
Описанная ситуация справедлива и для аутентификации с помощью электронной почты. Во многих случаях именно email используется как единственный способ восстановления доступа к аккаунту. И тот же банк может использовать систему пересылки электронного письма, когда вы регистрируетесь, например, с нового устройства. Это все попросту небезопасно. И все об этом знают, но продолжают пользоваться, потому что просто и удобно. Возможно, ситуацию можно улучшить, изменив способ использования электронной почты, но об этом – в следующем пункте.
3. Приложения для аутентификации
Приложения для аутентификации, такие как Google Authenticator или Authy, предлагают значительное улучшение безопасности в сравнении с двухфакторной аутентификацией на основе SMS. Они работают на основании временных одноразовых паролей (Time-Based One Time Passwords, или TOTP), которые приложение в вашем телефоне генерирует на основании сложных алгоритмов и без подключения к какой-либо сети. Интернет-страница или сервис используют те же алгоритмы для проверки корректности присланного пароля.
Поскольку система генерации TOTP-паролей работает в офлайн-режиме, она не страдает от тех проблем, которые возможны при перехвате SMS. Однако у нее есть свой набор недостатков. Этичные хакеры неоднократно демонстрировали, что данные, пересылаемые в этой системе, могут быть перехвачены и с ними возможны манипуляции в тот момент, когда вы вводите TOTP-пароль на веб-сайте. Это непросто, но возможно.
Важнее, что эта система уязвима к фишингу. Создать фишинговый сайт, который выглядит и ведет себя как настоящий, не так сложно. При этом даже передаваемые вами данные будут добираться до настоящего сервиса, так что вы сможете им пользоваться — зашифрованные TOTP-пароли придут и к вам и от вас. Потому что мошеннический сайт будет выполнять все необходимые действия в нужный момент, так что вы никак не сможете заметить разницу. Ведь все нужные подтверждения будут получены. Разумеется, в следующий раз мошенникам не понадобитесь ни вы, ни ваше устройство, чтобы обмануть сервис.
Еще одной проблемой является тот факт, что если вы действительно потеряли свой телефон, то получить проверочные коды будет непросто. Некоторые приложения, такие как Authy, могут работать на нескольких устройствах и имеют главный пароль для настройки, так что вы можете создавать бэкапы, которые позволят моментально восстановить доступ. И большинство компаний обеспечивает вас резервными кодами для восстановления доступа на тот случай, если обычная система полетела к чертям. Но эти сведения также передаются через Интернет, что ослабляет степень защиты при использовании временных паролей, хотя и обеспечивает большее удобство пользователям.
2. Двухфакторная аутентификация на основе push-сообщений
Некоторые сервисы, в первую очередь мы говорим об Apple и Google, отправляют вам быстрое сообщение о том, что кто-то пытается войти в ваш аккаунт на устройстве. Обычно вы получаете информацию о том, что за устройство и где примерно оно находится, а также вам предлагается немедленно согласиться с тем, что это разрешенная операция, или, напротив, заблокировать попытку. Если это вы, то просто тапаете кнопку, и все работает. Это и есть аутентификация на основе push-сообщений.
Двухфакторная аутентификация на базе push-сообщений в паре моментов лучше и SMS-варианта, и варианта на базе временных кодов. Она даже в определенной степени удобнее их, поскольку опирается на стандартную систему уведомлений вашего смартфона, — остается лишь прочитать и тапнуть «да» или «нет». Она даже достаточно устойчива к фишингу и пока демонстрирует высокий уровень защиты от хакерских атак. Но это пока.
В то же время система двухфакторной аутентификации на основе push-сообщений усугубляет некоторые недостатки и SMS, и TOTP-вариантов. Во-первых, вы должны быть онлайн, чтобы получать данные. Так что система попросту не подойдет тем, у кого не смартфон или кто по какой-то причине оказался не в сети. Во-вторых, вы должны всегда иметь смартфон под рукой — и именно тот, который привязан к аккаунту. Кроме того, никакой индустриального стандарта система не имеет, так что совершенно нормальной ситуацией будет, что push-уведомление от Google будет приходить на ваш смартфон, а только потом вы сможете залогиниться на других сервисах, подтверждая, что вы — это вы. Хотя это будут уже и не сервисы Google.
Если не считать этих двух недостатков, то двухфакторная аутентификация на основе push-сообщений на данный момент и надежна, и удобна. К тому же у Google есть планы по ее дальнейшему развитию в обоих направлениях.
1. Аппаратная двухфакторная аутентификация
Самый надежный способ защитить ваш сетевой аккаунт от взлома — это использовать специальное устройство для подтверждения личности. Специальные ключи в виде флешки — это двухфакторная аутентификация на аппаратной основе. Она самая редкая и наименее удобная в практическом использовании.
Вы настраиваете устройство таким образом, что каждый раз, когда вам необходимо войти в аккаунт с нового устройства или просто по истечении некоторого времени, вам понадобится именно этот девайс. Работает он по принципу, что устройство отправляет на сервер код вызов-ответ, который уникален для каждого сервера и устройства. Сам пароль при этом не передается, поскольку система основана на сравнении хешей. На данный момент такая система считается защищенной и от фишинга, и от взлома. И снова повторим — пока.
Вы можете настроить несколько девайсов в качестве такого ключа так, чтобы при потере одного из них не лишиться доступа к собственному аккаунту, но вам все равно всегда нужен будет такой ключ, чтобы иметь возможность залогиниться. Тут будет уместным сравнение с вашими ключами от машины или квартиры: лучше иметь пару комплектов, не считая аварийного, который стоит доверить другу или соседу, иначе проблем не избежать.
Но есть и отличия. Например, если вы используете аппаратную защиту в двухфакторной аутентификации для аккаунтов Google, компания обяжет вас создать дополнительный аварийный метод ее прохождения иным способом. Это, конечно, хорошо, но делает всю систему уязвимой. Потому что вместо чисто аппаратной защиты вы должны также использовать менее надежную альтернативу, которой могут воспользоваться и злоумышленники.
Кроме того, такая система защиты не является в полной мере бесплатной. Все три первых варианта всегда бесплатны, но специальное устройство-ключ стоит определенных денег. За каждый такой девайс вы можете отдать от 20 до 100 долларов. Не говоря уж о том, что не всякий сервис вообще допускает такой метод или оставляет его использование бесплатным. К тому же в случае со смартфоном ключ в виде флешки — не самое удобное решение. Можно найти варианты, работающие не через USB, а использующие NFC и Bluetooth, но они менее надежны, и вам все равно нужно будет держать ключ рядом со смартфоном.
Так какой лучше?
Все и ни один.
Любой способ двухфакторной аутентификации будет надежнее, чем отказ от нее. Даже с помощью SMS вы получите уровень защиты намного более высокий, чем если будете полагаться только на пароли. Программа Google Advanced Protection Program когда-нибудь в будущем, может быть, сделает нашу жизнь намного безопаснее и избавит от тех проблем и ограничений, что мы знаем сейчас, но похоже, что вам всегда нужно будет выбирать между удобством и безопасностью.
Пожалуй, что правильнее всего было бы отказаться от двухфакторной аутентификации на основе SMS-сообщений, поскольку она самая уязвимая и не требует со стороны злоумышленников никаких особенных технических знаний и навыков — достаточно почитать информацию на одном из множества сайтов. Этой уязвимостью активно пользуются, но пока простота использования и инерция сервисов оставляют ее в лидерах по применимости.
Мы все больше погружаемся в мир, где наши цифровые аккаунты значат ничуть не меньше, чем паспорт или другие документы, подтверждающие личность. Так что стоит побеспокоиться об их безопасности и лишний раз уделить немного внимания тем простым способам защиты, которые предоставляются сервисами. Ну или хотя бы знать о том, чем различаются разные способы, чтобы при необходимости понимать, каким лучше воспользоваться.