Двухфакторная аутентификация для безопасности криптовалют. Двухфакторная аутентификация Apple: особенности, принцип защиты, отключение

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

Вконтакте

Как работает двухфакторная аутентификация

Рассматриваемый способ защиты позволяет входить в аккаунт Apple ID только с доверенных устройств. К последним относятся iPhone, iPad или Mac пользователя, которые прошли проверку в системе. А именно: при первом доступе к учетной записи сервис потребует ввести пароль и код из шести цифр, который отобразится на экране гаджета, входящего в число доверенных. Например, если у юзера есть iPhone, а он желает зайти в свою учетную запись с новоприобретенного iPad (или Mac), то система предложит ему ввести пароль и код — последний будет переслан на смартфон.

Что это дает пользователю? Так как для входа в аккаунт необходим будет не только пароль, это значительно обезопасит как Apple ID, так и данные, которые сберегаются на серверах Apple. После того как доступ будет получен, проверочный код вводить больше не придется. За исключением тех случаев, когда будет совершен полный выход, удалены все данные с гаджета или будет проведена замена пароля. Также можно указать определенный браузер, как доверенный, если в аккаунт пользователь будет переходить с него (при условии, что совершать он это будет с доверенного устройства) – это избавит от необходимости каждый раз подтверждать свой доступ.

Доверенные (проверенные) устройства

К доверенным устройствам относятся iPhone, iPad, iPod touch или Mac, с установленными операционными системами iOS 9 или OS X El Capitan (или с их свежими обновлениями). С этих гаджетов должен быть осуществлен вход в аккаунт Apple ID с применением двухфакторной аутентификации. Иначе говоря, к проверенным устройствам относятся те, о которых система может точно знать, что они принадлежат конкретному владельцу, и в этом можно удостовериться, отправив на его гаджет проверочный код.

Проверенные номера телефона

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

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

Что такое код подтверждения

Это код, который отправляется системой на доверенное устройство или доверенный номер телефона пользователя для удостоверения его личности при первом входе в аккаунт. Запросить такой код можно также на своем проверенном гаджете в приложении «Настройки ». Следует помнить, что пароль и код – это не одно и то же. Пароль пользователь выдумывает сам, код же присылает ему система.

Как настроить двухфакторную аутентификацию для Apple ID на iPhone, iPad или iPod touch

Для того, чтобы получить доступ к опции двухфакторной аутентификации необходимо быть пользователем iCloud и иметь гаджет с iOS 9 или OS X El Capitan (или же с их обновлениями) на борту.

Если на вашем гаджете установлена операционная система iOS 10.3 или более новая версия, то необходимо предпринять такие шаги:

1. Открыть «Настройки », перейти в раздел с вашим именем и открыть пункт «Пароль и безопасность »;

2. В открывшемся окне кликнуть по кнопке «Включить » ниже пункта «Двухфакторная аутентификация »;

3. Нажать «Продолжить ».

Если устройство работает под управлением платформы iOS 10.2 и более ранних версий, необходимо выполнить следующие действия:

1. Открыть в «Настройках » раздел «iCloud »;

2. Выбрать свой Apple ID и перейти к пункту «Пароль и безопасность »;

3. В открывшемся окне активировать «Двухфакторную аутентификацию »;

4. Нажать «Продолжить ».

Верификация доверенного номера телефона

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

Как настроить двухфакторную аутентификацию для Apple ID на Mac

Для настройки двухфакторной аутентификации необходимо быть пользователем iCloud и OS X El Capitan (и новее) на борту.

1 . Откройте меню Apple и перейти в «Системные настройки », а затем в «iCloud » и «Учетную запись ».

2 . Выберите вкладку «Безопасность ».

3 . Кликните «Включить двухфакторную аутентификацию ».

4 . Следует знать, что если функция двухэтапной проверки уже включена, то ее следует отключить перед активацией двухфакторной аутентификации. Также некоторые Apple ID, созданные в версиях платформ iOS 10.3 или macOS 10.12.4 (а также в более поздних версиях этих ОС), могут автоматически включать защиту двухфакторной аутентификацией.

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

8 . В-третьих, не забывать своевременно обновлять список доверенных номеров телефонов.

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

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

Управление аккаунтом Apple ID

В своей учетной записи можно корректировать данные о доверенных устройствах и телефонах.

Обновление проверенных номеров телефонов

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

  • Зайти в свой аккаунт Apple ID;
  • Открыть вкладку «Безопасность » и кликнуть по пункту «Правка ».

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

Обзор доверенных гаджетов и управление ими

Просматривать информацию о гаджетах, получивших статус проверенных, можно в разделе «Устройства » в своем аккаунте Apple ID. Там же можно ознакомиться со сведениями, касающимися этих гаджетов.

В случае возникновения необходимости, проверенное устройство можно удалить из списка. После этого с него невозможно будет получить доступ к iCloud и прочим сервисам Apple до тех пор, пока оно снова не будет авторизовано посредством двухфакторной аутентификации.

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

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

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

Сегодня мы рассмотрим все виды двухфакторной аутентификации, применяемой для защиты учетных записей Google Account, Apple ID и Microsoft Account на платформах Android, iOS и Windows 10 Mobile.

Apple

Впервые двухфакторная аутентификация появилась в устройствах Apple в 2013 году. В те времена убедить пользователей в необходимости дополнительной защиты было непросто. В Apple не стали и стараться: двухфакторная аутентификация (получившая название двухэтапной проверки, или Two-Step Verification) использовалась только для защиты от прямого финансового ущерба. Например, одноразовый код требовался при совершении покупки с нового устройства, смене пароля и для общения со службой поддержки на темы, связанные с учетной записью Apple ID.

Добром это все не кончилось. В августе 2014 года произошла массовая утечка фотографий знаменитостей . Хакеры сумели получить доступ к учетным записям жертв и скачали фото из iCloud. Разразился скандал, в результате которого Apple в спешном порядке расширила поддержку двухэтапной проверки на доступ к резервным копиям и фотографиям в iCloud. В это же время в компании продолжались работы над методом двухфакторной аутентификации нового поколения.

Двухэтапная проверка

Для доставки кодов двухэтапная проверка использует механизм Find My Phone, изначально предназначенный для доставки push-уведомлений и команд блокировки в случае потери или кражи телефона. Код выводится поверх экрана блокировки, соответственно, если злоумышленник добудет доверенное устройство, он сможет получить одноразовый код и воспользоваться им, даже не зная пароля устройства. Такой механизм доставки - откровенно слабое звено.

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

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

Насколько это безопасно?

Если честно, не очень. Двухэтапная проверка реализована из рук вон плохо и заслуженно получила репутацию худшей системы двухфакторной аутентификации из всех игроков «большой тройки». Если нет другого выбора, то двухэтапная проверка - это все же лучше, чем ничего. Но выбор есть: с выходом iOS 9 Apple представила совершенно новую систему защиты, которой дали бесхитростное название «двухфакторная аутентификация».

В чем именно слабость этой системы? Во-первых, одноразовые коды, доставленные через механизм Find My Phone, отображаются прямо на экране блокировки. Во-вторых, аутентификация на основе телефонных номеров небезопасна: СМС могут быть перехвачены как на уровне провайдера, так и заменой или клонированием SIM-карты. Если же есть физический доступ к SIM-карте, то ее можно просто установить в другое устройство и получить код на совершенно законных основаниях.

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

Как взломать аутентификацию Apple

Взломать этот вариант двухфакторной аутентификации достаточно несложно. Есть несколько вариантов:

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

Как защититься

Защита с помощью двухэтапной проверки несерьезна. Не используй ее вообще. Вместо нее включи настоящую двухфакторную аутентификацию.

Двухфакторная аутентификация

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

Двухфакторная аутентификация появилась как составная часть iOS 9 и вышедшей одновременно с ней версии macOS. Новый метод включает дополнительную проверку при любой попытке зайти в учетную запись Apple ID с нового устройства: на все доверенные устройства (iPhone, iPad, iPod Touch и компьютеры под управлением свежих версий macOS) моментально приходит интерактивное уведомление. Чтобы получить доступ к уведомлению, нужно разблокировать устройство (паролем или датчиком отпечатка пальцев), а для получения одноразового кода потребуется нажать на кнопку подтверждения в диалоговом окне.

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


Поддерживаются и пароли приложений. А вот от кода восстановления доступа в Apple отказались: если ты потеряешь свой единственный iPhone вместе с доверенной SIM-картой (которую по каким-то причинам не сможешь восстановить), для восстановления доступа к учетной записи тебе придется пройти настоящий квест с подтверждением личности (и нет, скан паспорта таким подтверждением не является… да и оригинал, что называется, «не канает»).

Зато в новой системе защиты нашлось место для удобной и привычной офлайновой схемы генерации одноразовых кодов. Для нее используется совершенно стандартный механизм TOTP (time-based one-time password), который каждые тридцать секунд генерирует одноразовые коды, состоящие из шести цифр. Эти коды привязаны к точному времени, а в роли генератора (аутентификатора) выступает само доверенное устройство. Коды добываются из недр системных настроек iPhone или iPad через Apple ID -> Password and Security.


Мы не станем подробно объяснять, что такое TOTP и с чем его едят, но об основных отличиях реализации этого метода в iOS от аналогичной схемы в Android и Windows рассказать все-таки придется.

В отличие от основных конкурентов, Apple позволяет использовать в качестве аутентификаторов исключительно устройства собственного производства. В их роли могут выступать доверенные iPhone, iPad или iPod Touch под управлением iOS 9 или 10. При этом каждое устройство инициализируется уникальным секретом, что позволяет в случае его утраты легко и безболезненно отозвать с него (и только с него) доверенный статус. Если же скомпрометирован окажется аутентификатор от Google, то отзывать (и заново инициализировать) придется статус всех инициализированных аутентификаторов, так как в Google решили использовать для инициализации единственный секрет.

Насколько это безопасно

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

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

Как взломать двухфакторную аутентификацию

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


Как защититься

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

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

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

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

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

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

Самое печальное то, что многие полагаются на "авось" и используют довольно простые пароли доступа к любым серьёзным аккаунтам. А, между прочим, существуют целые специальные словари, содержащие тысячи популярных паролей, вроде "1234qwerty" и им подобных, которые позволяют взломать Вас в считанные минуты! Поэтому обычная парольная защита уже не является надёжной. Настало время для использования двухфакторной аутентификации!

Что такое двухфакторная аутентификация?

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

Традиционная модель многофакторной аутентификации подразумевает наличие трёх основных факторов (при этом каждый из них может дублироваться для повышения уровня защиты):

  1. Фактор знания . Подразумевает получение системой контроля доступа определённых данных, которые должен знать только конкретный пользователь. Например, это может быть традиционная пара "логин-пароль", пин-код, девичья фамилия матери или иная информация, которую, в идеале, можем знать только мы. Увы, многие пользователи не запоминают свои пароли, а хранят их на клочках бумажек прямо на рабочем месте. Поэтому гипотетическому злоумышленнику их не составит труда украсть...
  2. Фактор владения . Предусматривает наличие у пользователя определённой вещи, которой нет у других. К таким вещам можно отнести уникальный номер телефона, пластиковую карту с уникальным штрих-кодом или чипом с данными, USB-токен либо иное криптографическое устройство. Теоретически, украсть его тоже можно, но уже гораздо сложнее. А, учитывая, что фактор владения обычно подкреплён фактором знания (нужно предварительно ввести пароль), то шансы на успешное применение украденного девайса существенно снижаются.
  3. Фактор свойства . Использует для идентификации пользователя его определённые личные качества. К наиболее уникальным из них относятся отпечатки пальцев, лицо в общем, рисунок радужки глаза или даже проба ДНК! При должной степени чувствительности проверяющей аппаратуры обойти такую защиту просто невозможно. Однако, до подобного совершенства биометрической проверке ещё далеко, поэтому на современном этапе она обычно дополняется дополнительными факторами контроля доступа.

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

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

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

Однако, токены стоят денег и требуют периодического обновления ключей, которое тоже не всегда бесплатно. Поэтому наиболее общедоступным способом двухфакторной верификации всё же остаётся проверка по телефону. И вот о ней мы поговорим более подробно.

Двухфакторная аутентификация в Windows

Windows 10 является современной операционной системой, соответственно, она по определению должна содержать в себе и современные средства защиты. Одним из таковых является как раз механизм двухфакторной верификации пользователя. Данная функция в некоторых версиях системы то появлялась, то вновь исчезала, проходя ряд доработок, поэтому, если Вы хотите воспользоваться ею, обязательно убедитесь в том, что у Вас стоят все обновления (особенно патч KB3216755 , который исправил работу аутентификации в Anniversary Update).

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

Теперь нужно подготовить к процедуре свой телефон. На него нужно установить специальное приложение, которое будет принимать сигналы верификации входа в учётную запись Windows и подтверждать их. Для смартфонов на базе Android можно выбрать официальную программу Microsoft Authenticator , а для девайсов на iOS подойдёт унифицированное решение Google Authenticator (оно же для Android).

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

Откроется страница с настройками, среди которых нужно найти группу "Двухшаговая проверка" и в ней нажать на ссылку "Настройка двухшаговой проверки" :

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

Двухфакторная аутентификация в Google

После Windows на втором месте по популярности среди современных пользователей идёт Android. А большинство Андроид-устройств, как мы знаем, "привязаны" к аккаунту Google. Его тоже не помешает дополнительно защитить. Тем более, что функция двухфакторной аутентификации для его учётных записей работает уже довольно давно и успешно.

Чтобы получить доступ к настройкам двухэтапной верификации, Вам нужно войти в свой аккаунт Google, перейти на специальную страницу и нажать кнопку "Начать" :

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

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

Однако, вход с помощью телефона - не единственный метод двухфакторной аутентификации, который предлагает Google. Если у Вас есть токен стандарта FIDO Universal 2nd Factor (U2F), Вы также можете настроить вход в свой аккаунт с его помощью. Подробнее о том как это сделать написано . Ну и, естественно, получать коды верификации Вы можете не только в виде SMS, но и PUSH-сообщений в уже упомянутом нами выше приложении Google Authenticator.

Двухфакторная аутентификация в соцсетях

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

ДФА в Facebook

Facebook, будучи одной из самых популярных соцсетей на Западе, как и Google, уже давно предлагает своим пользователям функцию двухэтапной верификации входа в аккаунт. Причём коды доступа можно получать как через SMS, так и в универсальных приложениях авторизации. Из них поддерживается Google Authenticator и Duo Mobile .

Включить двухфакторную аутентификацию в Facebook можно, пройдя в раздел настроек

Редкий пост в блоге Яндекса, а особенно касающийся безопасности, обходился без упоминания двухфакторной аутентификации. Мы долго думали, как правильно усилить защиту пользовательских аккаунтов, да еще так, чтобы этим мог пользоваться без всех тех неудобств, которые включают в себя самые распространённые ныне реализации. А они, увы, неудобны. По некоторым данным, на многих крупных сайтах доля пользователей, включивших дополнительные средства аутентификации, не превышает 0,1%.

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

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

После включения двухфакторной аутентификации в Паспорте вам надо будет установить приложение Яндекс.Ключ в App Store или Google Play . В форме авторизации на главной странице Яндекса, в Почте и Паспорте появились QR-коды. Для входа в учётную запись необходимо считать QR-код через приложение - и всё. Если считать QR-код не получается, например не работает камера смартфона или нет доступа к интернету, приложение создаст одноразовый пароль, который будет действовать всего 30 секунд.

Расскажу о том, почему мы решили не использовать такие «стандартные» механизмы, как RFC 6238 или RFC 4226 . Как работают распространенные схемы двухфакторной аутентификации? Они двухэтапные. Первый этап ─ обычная аутентификация логином и паролем. Если он прошел успешно, сайт проверяет, «нравится» ему эта пользовательская сессия или нет. И, если «не нравится», просит пользователя «доаутентифицироваться». Распространенных методов «доаутентификации» два: отсылка SMS на привязанный к аккаунту номер телефона и генерация второго пароля на смартфоне. В основном для генерации второго пароля используется TOTP по RFC 6238. Если пользователь ввел второй пароль верно, сессия считается полностью аутентифицированной, а если нет, то сессия теряет и «предварительную» аутентификацию.

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

Что показалось нам проблемным в этой схеме?

Начнем с того, что компьютер среднестатистического пользователя не всегда можно назвать образцом защищенности: тут и выключение обновлений Windows, и пиратская копия антивируса без современных сигнатур, и ПО сомнительного происхождения ─ все это не повышает уровень защиты. По нашей оценке, компрометация компьютера пользователя ─ самый массовый способ «угона» учетных записей (и недавно тому было еще одно подтверждение), от нее в первую очередь и хочется защититься. В случае двухэтапной аутентификации, если считать, что компьютер пользователя скомпрометирован, ввод пароля на нем компрометирует сам пароль, являющийся первым фактором. Значит, злоумышленнику необходимо лишь подобрать второй фактор. В случае распространенных реализаций RFC 6238 второй фактор ─ это 6 десятичных цифр (а максимум, предусмотренный спецификацией, ─ 8 цифр). Согласно калькулятору bruteforce для OTP , за три дня атакующий в состоянии подобрать второй фактор, если ему каким-либо образом стал известен первый. Нет ясности, что сервис может противопоставить этой атаке, не нарушая нормальную работу пользователя. Единственный возможный proof of work ─ капча, что, на наш взгляд, является последним средством.

Вторая проблема ─ непрозрачность суждения сервиса о качестве пользовательской сессии и принятия решения о необходимости «доаутентификации». Хуже того, сервис не заинтересован в том, что бы сделать этот процесс прозрачным, ─ ведь тут фактически работает security by obscurity. Если злоумышленник знает, на основании чего сервис принимает решение о легитимности сессии, он может попытаться подделать эти данные. Из общих соображений можно заключить, что суждение делается на основе истории аутентификаций пользователя с учетом IP-адреса (и производных от него номера автономной системы, идентифицирующей провайдера, и местоположения на основе геобазы) и данных браузера, например заголовка User Agent и набора cookies, flash lso и html local storage. Это означает, что если злоумышленник контролирует компьютер пользователя, то он имеет возможность не только украсть все необходимые данные, но и воспользоваться IP-адресом жертвы. Более того, если решение принимается на основе ASN, то любая аутентификация из публичного Wi-Fi в кофейне может привести к «отравлению» с точки зрения безопасности (и обелению с точки зрения сервиса) провайдера этой кофейни и, например, обелению всех кофеен в городе. Мы рассказывали о работе системы обнаружения аномалий , и ее можно было бы применить, но времени между первым и вторым этапом аутентификации может оказаться недостаточно для уверенного суждения об аномалии. Кроме того, этот же аргумент разрушает идею «доверенных» компьютеров: злоумышленник может украсть любую информацию, влияющую на суждение о доверенности.

Наконец, двухэтапная аутентификация попросту неудобна: наши usability-исследования показывают, что ничто так не раздражает пользователей, как промежуточный экран, дополнительные нажатия на кнопки и прочие «неважные», с его точки зрения, действия.
Исходя из этого, мы решили, что аутентификация должна быть одноэтапной и пространство паролей должно быть намного больше, чем возможно сделать в рамках «чистого» RFC 6238.
При этом нам хотелось по возможности сохранить двухфакторность аутентификации.

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

  1. Факторы знания (это традиционные пароли, пин-коды и все, что на них похоже);
  2. Факторы владения (в используемых OTP-схемах, как правило, это смартфон, но может быть и аппаратный токен);
  3. Биометрические факторы (отпечаток пальца ─ самый распространенный сейчас, хотя кто-то вспомнит эпизод с героем Уэсли Снайпса в фильме Demolition Man).

Разработка нашей системы

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

Широко распространена такая форма одноэтапной аутентификации: пользователь помнит пин-код (первый фактор), имеет на руках аппаратный или программный (в смартфоне) токен, генерирующий OTP (второй фактор). В поле ввода пароля он вводит пин-код и текущее значение OTP.

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

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

В качестве Nonce может выступать либо счетчик, либо текущее время. Мы решили выбрать текущее время, это позволяет не бояться рассинхронизации в случае, если кто-то сгенерирует слишком много паролей и увеличит счетчик.

Итак, у нас есть программа для смартфона, куда пользователь вводит свою часть секрета, та смешивается с хранимой частью, результат используется в качестве ключа HMAC , которым подписывается текущее время, округленное до 30 секунд. Выход HMAC приводится к читаемому виду, и вуаля ─ вот и одноразовый пароль!

Как уже было сказано, RFC 4226 предполагает усечение результата работы HMAC до максимум 8 десятичных цифр. Мы решили, что пароль такого размера непригоден для одноэтапной аутентификации и должен быть увеличен. При этом нам хотелось сохранить простоту использования (ведь, напомним, хочется сделать такую систему, которой будут пользоваться обычные люди, а не только security-гики), так что в качестве компромисса в текущей версии системы мы выбрали усечение до 8 символов латинского алфавита. Кажется, что 26^8 паролей, действующих в течение 30 секунд, вполне приемлемо, но если security margin нас не будет устраивать (или на Хабре появятся ценные советы, как улучшить эту схему), расширим, например, до 10 символов.

Подробнее о стойкости таких паролей

В самом деле, для латинских букв без учета регистра число вариантов на один знак равно 26, для больших и малых латинских букв плюс цифры, число вариантов равно 26+26+10=62. Тогда log 62 (26 10) ≈ 7,9 то есть пароль из 10 случайных малых латинских букв почти такой же стойкий, как пароль из 8 случайных больших и малых латинских букв или цифр. Этого точно хватит на 30 секунд. Если говорить о 8-символьном пароле из латинских букв, то его стойкость log 62 (26 8) ≈ 6,3 , то есть немного больше 6-символьного пароля из больших, малых букв и цифр. Мы считаем, что это все еще приемлемо для окна в 30 секунд.

Магия, беспарольность, приложения и дальнейшие шаги

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

Поэтому мы начали работы над «магическим логином». С таким способом аутентификации пользователь запускает приложение на смартфоне, вводит в него свой пин-код и сканирует QR-код на экране своего компьютера. Если пин-код введен правильно, страница в браузере перезагружается и пользователь оказывается аутентифицирован. Магия!

Как это устроено?

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

Стало лучше, но и тут мы решили не останавливаться. Начиная с iPhone 5S в телефонах и планшетах Apple появился сканер отпечатков пальцев TouchID, а в iOS версии 8 работа с ним доступна и сторонним приложениям. На деле приложение не получает доступ к отпечатку пальца, но если отпечаток верен, то приложению становится доступен дополнительный раздел Keychain. Этим мы и воспользовались. В защищенную TouchID запись Keychain помещается вторая часть секрета, та, которую в предыдущем сценарии пользователь вводил с клавиатуры. При разблокировке Keychain две части секрета смешиваются, и дальше процесс работает так, как описано выше.

Зато пользователю стало невероятно удобно: он открывает приложение, прикладывает палец, сканирует QR-код на экране и оказывается аутентифицированным в браузере на компьютере! Так мы заменили фактор знания на биометрический и, с точки зрения пользователя, совсем отказались от паролей. Мы уверены, что обычным людям такая схема покажется куда более удобной, чем ручной ввод двух паролей.

Можно подискутировать, насколько формально двухфакторной является такая аутентификация, но на деле для успешного ее прохождения все еще необходимо иметь телефон и обладать правильным отпечатком пальца, так что мы считаем, что нам вполне удалось отказаться от фактора знания, заменив его биометрией. Мы понимаем, что полагаемся на безопасность ARM TrustZone , лежащей в основе iOS Secure Enclave , и считаем, что на настоящий момент эту подсистему можно считать доверенной в рамках нашей модели угроз. Разумеется, нам известны проблемы биометрической аутентификации: отпечаток пальца ─ не пароль и заменить его в случае компрометации нельзя. Но, с другой стороны, всем известно, что безопасность обратно пропорциональна удобству, и пользователь сам вправе выбрать приемлемое для него соотношение одного и другого.

Напомню, что пока это бета. Сейчас при включении двухфакторной аутентификации мы временно выключаем синхронизацию паролей в Яндекс.Браузере. Связано это с тем, как устроено шифрование базы паролей. Мы уже придумываем удобный способ аутентификации Браузера в случае 2FA. Вся остальная функциональность Яндекса работает в прежнем режиме.

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

Теги: Добавить метки

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

Как это работает

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

Например, вы имеете ноутбук Мас и хотите войти в свою учетную запись на недавно приобретенном планшете iPad. Для этого вы сначала вводите свой логин и пароль, а после проверочный код, который автоматически появляется на экране вашего ноутбука.

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

Доверенные устройства

Сделать доверенным можно гаджет лишь компании Apple. Причем установленная на нем операционная система должна быть не ниже iOS 9 для мобильных устройств и не ниже ОС Х El Capitan для ноутбуков и персональных компьютеров. «Двухфакторная аутентификация» объясняет это тем, что только в таком случае компания Apple может гарантировать, что используемый лэптоп принадлежит именно вам.

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

Новая степень защиты

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

Если же двухфакторная аутентификация предлагает разрешить вход на другом устройстве, хотя в данный момент местоположение устройства не совпадает с вашим, то стоит запретить данное действие. Это свидетельствует о несанкционированном доступе к вашему гаджету, а также может служить сигналом о расположении злоумышленника, укравшего ваш телефон.

Отключение двухфакторной системы защиты

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

Существует два способа отключить двухфакторную аутентификацию Apple. В первом случае вам необходимо войти в свою учетную запись, выбрать меню «Правка» и в пункте меню «Безопасность» выбрать соответствующий параметр. Подтвердив свою дату рождения и ответив на секретные вопросы, вы отключите двухфакторную защиту.

Отключение аутентификации электронной почтой

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

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

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