Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

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

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

Характеристики [ править ]

Самым важным преимуществом одноразовых паролей является то, что они, в отличие от статических паролей, не уязвимы для атак повторного воспроизведения . Это означает, что потенциальный злоумышленник, которому удастся записать OTP, который уже использовался для входа в службу или для проведения транзакции, не сможет злоупотребить им, поскольку он больше не будет действительным. [2] Вторым важным преимуществом является то, что пользователь, использующий один и тот же (или аналогичный) пароль для нескольких систем, не становится уязвимым для всех из них, если пароль для одной из них получен злоумышленником. Ряд систем OTP также призван гарантировать, что сеанс не может быть легко перехвачен или имитирован без знания непредсказуемых данных, созданных во время предыдущего сеанса, тем самым сокращаяповерхность атаки дальше.

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

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

Поколение [ править ]

Конкретные алгоритмы одноразовых паролей сильно различаются по деталям. Различные подходы к созданию одноразовых паролей включают:

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

Синхронизировано по времени [ править ]

Синхронизированный по времени OTP обычно связан с частью оборудования, называемым токеном безопасности (например, каждому пользователю выдается личный токен, который генерирует одноразовый пароль). Он может выглядеть как маленький калькулятор или брелок для ключей с ЖК-дисплеем, на котором время от времени меняется число. Внутри токена находятся точные часы, которые были синхронизированы с часами на проприетарном сервере аутентификации . В этих системах OTP время является важной частью алгоритма пароля, поскольку создание новых паролей основывается на текущем времени, а не на предыдущем пароле или секретном ключе или в дополнение к нему . Этот токен может быть проприетарным устройством, мобильным телефоном или аналогичныммобильное устройство , которое работает программное обеспечение , что является собственностью, бесплатное программное обеспечение , или с открытым исходным кодом . Примером стандарта OTP с синхронизацией по времени является одноразовый пароль на основе времени (TOTP). Некоторые приложения могут использоваться для сохранения OTP с синхронизацией по времени, например Google Authenticator или менеджер паролей .

Хеш-цепочки [ править ]

Каждый новый OTP может быть создан из использованных ранее OTP. Пример этого типа алгоритма, приписанный Лесли Лэмпорту , использует одностороннюю функцию (назовите ее f ). Эта система одноразовых паролей работает следующим образом:

  1. Выбирается семя (начальное значение) s .
  2. Хэш - функция F ( ы ) применяется повторно (например, 1000 раз) к семенам, что дает значение: F ( F ( F (.... е ( ов ) ....))). Это значение, которое мы назовем f 1000 ( s ), сохраняется в целевой системе.
  3. При первом входе пользователя в систему используется пароль p, полученный 999-кратным применением f к начальному значению, то есть f 999 ( s ). Целевая система может подтвердить, что это правильный пароль, потому что f ( p ) равно f 1000 ( s ), что является сохраненным значением. Сохраненное значение затем заменяется на p, и пользователю разрешается войти в систему.
  4. Следующий логин должен сопровождаться f 998 ( s ). Опять же, это можно проверить, потому что хеширование дает f 999 ( s ), что является p , значением, сохраненным после предыдущего входа в систему. Опять же, новое значение заменяет p, и пользователь аутентифицируется.
  5. Это может быть повторен еще 997 раз, каждый раз , когда пароль будет е применяется один раз меньше, и проверяется путем проверки , что , когда хэшируются, это дает значение , хранящееся во время предыдущего входа в систему . Хеш-функции разработаны таким образом, чтобы их было чрезвычайно сложно отменить, поэтому злоумышленнику необходимо знать начальное начальное значение s для вычисления возможных паролей, в то время как компьютерная система может подтвердить, что пароль в любом конкретном случае действителен, проверяя, что при хешировании он дает значение, ранее использовавшееся для входа в систему. Если требуется неопределенная серия паролей, новое начальное значение может быть выбрано после того, как набор для s исчерпан.

Чтобы получить следующий пароль в серии из предыдущих паролей, нужно найти способ вычисления обратной функции f −1 . Поскольку f был выбран односторонним, это сделать чрезвычайно сложно. Если f является криптографической хеш-функцией , что обычно так, предполагается, что это сложная с вычислительной точки зрения задача. Злоумышленник, который случайно увидит одноразовый пароль, может иметь доступ на один период времени или войти в систему, но по истечении этого периода он становится бесполезным. Система одноразовых паролей S / KEY и производная от нее OTP основаны на схеме Лампорта.

Вызов-ответ [ править ]

Использование одноразовых паролей запрос-ответ требует от пользователя ответа на запрос. Например, это можно сделать, введя значение, созданное токеном, в сам токен. Чтобы избежать дублирования, обычно используется дополнительный счетчик, поэтому, если один и тот же вызов встречается дважды, это все равно приводит к разным одноразовым паролям. Однако при вычислении обычно [ необходима ссылка ] не используется предыдущий одноразовый пароль; то есть обычно используется тот или иной алгоритм, а не оба алгоритма.

Реализации [ править ]

SMS [ править ]

Распространенной технологией, используемой для доставки одноразовых паролей, является обмен текстовыми сообщениями . Поскольку обмен текстовыми сообщениями является повсеместным каналом связи, который напрямую доступен почти во всех мобильных телефонах и, благодаря преобразованию текста в речь, на любой мобильный или стационарный телефон, обмен текстовыми сообщениями имеет большой потенциал для охвата всех потребителей с низкой общей стоимостью обслуживания. воплощать в жизнь. OTP через обмен текстовыми сообщениями может быть зашифрован с использованием стандарта A5 / x , который, по сообщениям нескольких хакерских групп, может быть успешно расшифрован в течение нескольких минут или секунд. [4] [5] [6] [7] Кроме того, недостатки безопасности в SS7.протокол маршрутизации может и использовался для перенаправления связанных текстовых сообщений злоумышленникам; в 2017 году несколько клиентов O2 в Германии были взломаны таким образом, чтобы получить доступ к своим счетам в мобильном банке . В июле 2016 года NIST США выпустил проект специальной публикации с инструкциями по методам аутентификации, в которых не рекомендуется использовать SMS в качестве метода внеполосной двухфакторной аутентификации из-за возможности перехвата SMS. в масштабе. [8] [9] [10] Текстовые сообщения также уязвимы для мошенничества с заменой SIM-карты, когда злоумышленник обманным путем переносит номер телефона жертвы на свою SIM-карту., который затем можно использовать для получения доступа к отправляемым ему сообщениям. [11] [12]

Аппаратные токены [ править ]

Токены безопасности RSA SecurID .

RSA Security «ы SecurID является одним примером типа временной синхронизации маркеров, наряду с HID Global » решениями с. Как и все жетоны, они могут быть потеряны, повреждены или украдены; Кроме того, возникает неудобство из-за того, что батареи умирают, особенно для жетонов без возможности подзарядки или с незаменяемой батареей. Вариант проприетарного токена был предложен RSA в 2006 году и был описан как «повсеместная аутентификация», при которой RSA будет сотрудничать с производителями для добавления физических чипов SecurID в такие устройства, как мобильные телефоны.

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

Yubico предлагает небольшой USB-токен со встроенным чипом, который создает одноразовый пароль при нажатии клавиши и имитирует клавиатуру, чтобы упростить ввод длинного пароля. [13] Поскольку это устройство USB, замена батареи устраняет неудобства.

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

Мягкие токены [ править ]

На смартфонах одноразовые пароли также могут быть доставлены напрямую через мобильные приложения , включая специальные приложения для аутентификации, такие как Authy и Google Authenticator , или в существующем приложении службы, например, в случае Steam . Эти системы не имеют тех же уязвимостей безопасности, что и SMS, и не обязательно требуют подключения к мобильной сети для использования. [14] [10] [15]

Печатные копии [ править ]

Бумажный вход на веб-сайт OTP

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

Безопасность [ править ]

Одноразовые пароли уязвимы для атак социальной инженерии, при которых фишеры крадут одноразовые пароли, обманывая клиентов и заставляя их предоставить один или несколько одноразовых паролей, которые они использовали в прошлом. В конце 2005 года клиентов шведского банка обманом заставили отказаться от одноразовых паролей. [16] В 2006 году этот тип атаки был использован на клиентов американского банка. [17] Даже синхронизированные по времени OTP уязвимы для фишинга двумя способами: пароль может использоваться злоумышленником так же быстро, как и законный пользователь, если злоумышленник может достаточно быстро получить OTP в виде открытого текста . Другой тип атаки, который может быть отражен системами OTP, реализующими цепочку хеширования , заключается в том, что фишер использует полученную информацию (прошлые коды OTP, которые больше не действительны) с помощью этого метода социальной инженерии, чтобы предсказать, какие коды OTP будут использоваться в будущем. Например, генератор паролей OTP, который является псевдослучайным, а не действительно случайным, может быть или не может быть взломан, потому что псевдослучайные числа часто предсказуемы, если у кого-то есть прошлые коды OTP. Система OTP может использовать действительно случайные OTP только в том случае, если OTP генерируется аутентификатором и передается (предположительно по внеполосному каналу) пользователю; в противном случае OTP должен генерироваться независимо каждой стороной, что требует повторяемого и, следовательно, просто псевдослучайного алгоритма .

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

Стандартизация [ править ]

Многие технологии OTP запатентованы. Это затрудняет стандартизацию в этой области, поскольку каждая компания пытается продвигать свои собственные технологии. Однако стандарты существуют - например, RFC 1760 ( S / KEY ), RFC 2289 (OTP), RFC 4226 ( HOTP ) и RFC 6238 ( TOTP ).

См. Также [ править ]

  • Google Authenticator
  • FreeOTP
  • Инициатива по открытой аутентификации
  • KYPS
  • Одноразовый блокнот
  • OTPW
  • S / KEY
  • Маркер безопасности
  • Алгоритм одноразового пароля на основе времени
  • Двухфакторная аутентификация

Ссылки [ править ]

  1. ^ «Одноразовые коды доступа для двухфакторной аутентификации: быстрая или медленная смерть? | Блог IDology» . Идология . 2 августа 2017 года . Проверено 21 ноября 2020 года .
  2. ^ a b Патерсон, Кеннет Дж .; Стебила, Дуглас (2010). Стейнфельд, Рон; Хоукс, Филип (ред.). «Обмен ключами с одноразовым паролем» . Информационная безопасность и конфиденциальность . Конспект лекций по информатике. Берлин, Гейдельберг: Springer. 6168 : 264–281. DOI : 10.1007 / 978-3-642-14081-5_17 . ISBN 978-3-642-14081-5.
  3. ^ EOTP - передача статического ключа . Defuse.ca (13 июля 2012 г.). Проверено 21 декабря 2012.
  4. ^ Баркан, Элад; Эли Бихам ; Натан Келлер (2003). «Мгновенный криптоанализ зашифрованной связи GSM с использованием только зашифрованного текста » : 600–16. Архивировано из оригинального 7 -го октября 2015 года . Проверено 6 октября 2015 года . Цитировать журнал требует |journal=( помощь )
  5. ^ Баркан, Элад; Эли Бихам; Натан Келлер. «Мгновенный криптоанализ зашифрованной связи GSM с использованием только зашифрованного текста, сделанный Барканом и Бихамом из Техниона (полная версия)» (PDF) .
  6. ^ Gueneysu, Тим; Тимо Каспер; Мартин Новотны; Кристоф Паар; Энди Рупп (2008). «Криптоанализ с помощью КОПАКОБАНА» (PDF) . Транзакции IEEE на компьютерах . 57 (11): 1498–1513. DOI : 10.1109 / TC.2008.80 . S2CID 8754598 .  
  7. ^ Нол, Карстен; Крис Пэджет (27 декабря 2009 г.). GSM: SRSLY? . 26-й Конгресс коммуникаций Хаоса (26C3) . Проверено 30 декабря 2009 года .
  8. ^ Фонтана, Джон. «Блог NIST разъясняет отказ от SMS в связи с появлением в СМИ штопора» . ZDNet . Проверено 14 июля 2017 года .
  9. ^ Мейер, Дэвид. «Время для кодов безопасности входа на основе SMS истекает» . Удача . Проверено 14 июля 2017 года .
  10. ^ a b Брэндом, Рассел (10 июля 2017 г.). «Двухфакторная аутентификация - это лажа» . Грань . Проверено 14 июля 2017 года .
  11. ^ Brandom, Рассел (31 августа 2019). «Пугающе простой метод, который захватил аккаунт Джека Дорси в Твиттере» . Грань . Проверено 30 января 2020 года .
  12. ^ Tims, Анна (26 сентября 2015). « ' Sim swap' дает мошенникам доступ ко всем областям через ваш мобильный телефон» . Хранитель . ISSN 0261-3077 . Проверено 30 января 2020 года . 
  13. ^ "Юбико AB" . Bloomberg Businessweek . Проверено 13 июля 2011 года .
  14. Гарун, Натт (17 июня 2017 г.). «Как настроить двухфакторную аутентификацию на всех своих онлайн-аккаунтах» . Грань . Проверено 14 июля 2017 года .
  15. ^ McWhertor, Майкл (15 апреля 2015). «Valve добавляет двухфакторную аутентификацию для входа в мобильное приложение Steam» . Многоугольник . Проверено 8 сентября 2015 года .
  16. ^ Статья Регистра . Статья в Регистре (12 октября 2005 г.). Проверено 21 декабря 2012.
  17. ^ Блог службы безопасности Washington Post . Blog.washingtonpost.com. Проверено 21 декабря, 2012.