Пользователь
0,0
рейтинг
13 сентября 2012 в 03:31

Разработка → Сложно ли угадать PIN-код? перевод

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

Исследователи из университета Кембриджа Sören Preibusch и Ross Anderson исправили ситуацию, опубликовав первый в мире количественный анализ сложности угадывания 4-циферного банковского PIN-кода.

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

Отправной точкой исследования был набор 4-циферных последовательностей в паролях из базы RockYou (1.7 млн), и базы из 200 тысяч PIN-кодов от программы блокировки экрана iPhone (базу предоставил разработчик приложения Daniel Amitay). В графиках, построенных по этим данным, проступают интересные закономерности — даты, года, повторяющиеся цифры, и даже PIN-коды, заканчивающиеся на 69. На основе этих наблюдений учёные построили линейную регрессионную модель, которая оценивает популярность каждого PIN-кода в зависимости от 25 факторов, — например, является ли код датой в формате ДДММ, является ли он возрастающей последовательностью, и так далее. Этим общим условиям соответствуют 79% и 93% PIN-кодов в каждом из наборов.



Итак, пользователи выбирают 4-циферные коды на основе всего нескольких простых факторов. Если бы так выбирались и банковские PIN-коды, 8–9% из них можно было бы угадать всего за три попытки! Но, конечно, к банковским кодам люди относятся гораздо внимательнее. Ввиду отсутствия сколько-нибудь большого набора настоящих банковских данных, исследователи опросили более 1300 человек, чтобы оценить, насколько реальные PIN-коды отличаются от уже рассмотренных. Учитывая специфику исследования, у респондентов спрашивали не о самих кодах, а только о их соответствии какому-либо из вышеназванных факторов (возрастание, формат ДДММ, и т.д.).

Оказалось, что люди действительно гораздо тщательнее выбирают банковские PIN-коды. Примерно четверть опрошенных используют случайный PIN, сгенерированный банком. Более трети выбирают свой PIN-код, используя старый номер телефона, номер студенческого билета, или другой набор цифр, который выглядит случайным. Согласно полученным результатам, 64% владельцев карт используют псевдослучайный PIN-код, — это гораздо больше, чем 23-27% в предыдущих экспериментах с не-банковскими кодами. Ещё 5% используют цифровой паттерн (например, 4545), а 9% предпочитают паттерн на клавиатуре (например, 2684). В целом, злоумышленник с шестью попытками (три с банкоматом и три с платёжным терминалом) имеет меньше 2% шансов угадать PIN-код чужой карты.

Фактор Пример RockYou iPhone Опрос
Даты
ДДММ 2311 5.26 1.38 3.07
ДМГГ 3876 9.26 6.46 5.54
ММДД 1123 10.00 9.35 3.66
ММГГ 0683 0.67 0.20 0.94
ГГГГ 1984 33.39 7.12 4.95
Итого 58.57 24.51 22.76
Клавиатурный паттерн
смежные 6351 1.52 4.99
квадрат 1425 0.01 0.58
углы 9713 0.19 1.06
крест 8246 0.17 0.88
диагональная линия 1590 0.10 1.36
горизонтальная линия 5987 0.34 1.42
слово 5683 0.70 8.39
вертикальная линия 8520 0.06 4.28
Итого 3.09 22.97 8.96
Цифровой паттерн
заканчивается на 69 6869 0.35 0.57
только цифры 0-3 2000 3.49 2.72
только цифры 0-6 5155 4.66 5.96
повторяющиеся пары 2525 2.31 4.11
одинаковые цифры 6666 0.40 6.67
убывающая последовательность 3210 0.13 0.29
возрастающая последовательность 4567 3.83 4.52
Итого 15.16 24.85 4.60
Случайный набор цифр 23.17 27.67 63.68

Всё бы хорошо, но, к сожалению, существенная часть опрошенных (23%) выбирает PIN-код в виде даты, — и почти треть из них использует дату своего рождения. Это существенно меняет дело, ведь почти все (99%) респонденты ответили, что хранят в бумажнике с банковскими картами различные удостоверения личности, на которых эта дата напечатана. Если злоумышленник знает день рождения владельца карты, то при грамотном подходе вероятность угадывания PIN-кода взлетает до 9%.

В качестве решения авторы предлагают банкам запретить 100 самых популярных PIN-кодов, — в общем случае, это снизит вероятность угадывания до 0.2%.

100 самых популярных PIN-кодов
0000, 0101–0103, 0110, 0111, 0123, 0202, 0303, 0404, 0505, 0606, 0707, 0808, 0909, 1010, 1101–1103, 1110–1112, 1123, 1201–1203, 1210–1212, 1234, 1956–2015, 2222, 2229, 2580, 3333, 4444, 5252, 5683, 6666, 7465, 7667.


P.S. На практике, разумеется, злоумышленнику гораздо проще подсмотреть ваш PIN-код, чем угадывать его. Но и от подглядывания можно защититься — даже, казалось бы, в безвыходном положении:
Перевод: Joseph Bonneau
Андрей @anmipo
карма
132,2
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (68)

  • +38
    Обычно за меня уже выбирает банк.
    • +4
      А есть еще банки, где нельзя сменить пин?
      • +7
        А есть ещё банки, где можно сменить пин на собственный?

        Сменить-то можно всегда, но всего лишь пришлют новый случайный.
        • +8
          Вообще то есть )
        • +4
          В Альфе можно свой выбрать в банкомате.
          • 0
            В Сбербанке точно также.
            • 0
              Да? Никогда не видел в Сбере такого. А надо бы сменить пин, ибо 8 лет с одним ходить — уже начинает паранойя грызть.
              • 0
                В сберовском банкомате сменить можно
            • +1
              Очень странно. У них в банкомате можно подключить оповещение о движениях по карте к мобильному. Но только по одной карте. Их банкомат даёт купюру 5000 руб., если снимать 5000 руб. и выбрать пункт «с разменом». При переводе средств на счёт в другом банке, и срыву этого перевода по какой-то причине, приходится брать личное обещание с оператора, что деньги всё-таки не будут переведены банком спустя 45 дней рассмотрения этой ситуации (заплачено наличными). Это в этом банке никто не знает, что такое собественный корреспондентский счёт, хотя он и опубликован у них на сайте. Это в их отделениях считается невиданной наглостью пытаться снять в окошке деньги с карты, если карта выпущена в другом отделении, а ещё хуже — районе города, и совсем преступлением — в другом городе. Это не они ли без спроса перевыпускают 4 раза карту, которую я оформил 9 лет назад и даже не забирал из отделения? Это не их ли кредитный отдел при рассмотрении заявки на кредит поднимает информацию из нелегальных источников? Это не их ли банкоматы не работают с завидной регулярностью? Это не их ли программисты умывают руки, выложив логи Оракла в надежде, что кто-то со стороны сообразит, что у них там не так?

              Уверен, что при смене пин-кода тоже есть какой-то подвох, как, например, девушка, звонящая на ваш мобильный с совершенно неизвестного городского номера, и устно подтверждающая ваш новый пин-код, дополнительно спросив два секретных вопроса.
        • +2
          Есть банки, где ты сам его устанавливаешь (citi).
          • +1
            Моментум в СберБанке — пин выбираем сами.
        • 0
          Есть чиповые карты. У них гораздо, гораздо реже банки предоставляют возможность сменить пин.
          • 0
            с точностью до наоборот, все чиповые карты которые у меня есть позволяют сменить пин на произвольный в банкомате
            • 0
              Я имел ввиду РФ. В европе чиповые карты давно.
      • 0
        а есть банки, который хотят денег за смену ПИН-кода (*косо смотрю на Юникредит*)
      • 0
        Втб24, например. Это очень неудобно. Причем ввели они это правило не так давно.
  • +67
    Все пинкоды уже давно слиты pastebin.com/2qbRKh3R
    • +17
      Бля, я нашёл там все свои PIN-коды! *паника*
      • +3
        В какой строке?
        • +7
          В разных!
    • +3
      А моего нет, у меня 6-значный :P
    • +1
      Спасибо, нашел свой, давно забытый, PIN!
  • –6
    Спохватился, что забыл ПИН от симки, но потом вспомнил.
  • +6
    Пишется 3 4х значных числа на карту и делов-то. Вся защита.
    • 0
      Тогда уж 4.
      • 0
        достаточно трех неправильных же
        • 0
          Я просто подумал, что имелось в виду, что одна из комбинаций правильная.
    • 0
      Если злоумышленник предположит что числа могут быть фейком (т.е. либо фейк либо не фейк), то вероятность что он отгадает пин всё же сохраняется, но она чуть менее чем в два раза меньше исходной (если числа фейк, то они точно не совпадают с ПИНом).
  • +4
    Кстати, просто в тему:
    1. Пин-код может быть не только 4-х символьный. Это устоявшаяся практика, не более;
    2. Пин-коды генерируются в процессинговых центрах банков в так называемых HSM-ах;
    3. Количество попыток ввода неверного пин-кода зависит от политик процессингового центра, и уж точно не зависит от того где он вводится (терминал/банкомат). Обычно уже на третьей неверной попытке банкомат карточку положит в свой внутренний лоточек и ее вы больше не увидите.
  • 0
    А кредитные смарт-карты тоже PIN-код требуют?
  • +1
    Интересно, как в самые популярные попали коды вроде 2229, 2580, 5683, 7465, 7667. Или они уже гораздо менее популярны 4 одинаковых цифр или годов?
    • 0
      Наверное, там клавиши как-то удобно под пальцы ложатся. По типу мегапаролей qwerty или asdasd.
      • 0
        Да непохоже, кроме разве что 2580 в одной колонке, но и то не в подряд.
        • 0
          Вы на телефонную клавиатуру посмотрите.
          • 0
            Смотрел, и что?
            • +1
              На телефонной клавиатуре как раз сверху вниз в средней колонке получается 2580
              • 0
                Кэп! Я об этом и сказал выше: «…кроме разве что 2580 в одной колонке…»
                • 0
                  Это был ответ на «но и то не в подряд». Как же не подряд, когда подряд?
                  • 0
                    Да, попутал, подумал о 2850
  • 0
    Пардон, дорогой Капитан, подскажите, пожалуйста, что сакрального в 69?
    • 0
      69
      • +3
        Не, ну это я в курсе. И что, и всё?
        С таким пафосом «и даже PIN-коды, заканчивающиеся на 69». Как будто это, по меньшей мере, 42.
        • 0
          Всё.

          69 запомнить легче, чем 74, только потому, что это 69
        • +3
          Подозреваю что про 69 знает гораздо больше народу чем про 42
  • 0
    Я заметил такую закономеность. На всех картах, которые мне когда-либо выдавались, были минимум две одинаковые цифры в пин-коде (у меня есть карты Альфабанка, Банка Москвы, Сбера, всего было штук 10). Интересно, это я такой везучий, или они специально упрощают пин-код, чтобы меньше людей его забывали.
    • +1
      Вероятность что все цифры уникальны при «случайности» 0.504
      Сложно сказать на такой маленькой выборке, получите хотя бы несколько тысяч карт для статистики =)
    • 0
      Возможно у банков есть какая-то внутренняя статистика по этому поводу. Это было бы с одной стороны разумно, так как сэкономит денег на операторов, обслуживающих забывчивых вкладчиков, а с другой стороны нужно не забывать о безопасности.
    • 0
      Банкам запрещено устанавливать пользователю предсказуемый PIN-код.
      http://usa.visa.com/download/merchants/visa-issuer-pin-security-guideline.pdf
      Раздел «PIN Generation», страница 20. Можно использовать любые из указанных методов:
      – Issuer assigned derived PIN, generated using an appropriate
      cryptographic algorithm with an appropriate key length commensurate
      with existing standards (for example ISO TR 14742).
      – Issuer assigned random PIN, generated using a Random Number
      Generator compliant with ISO/IEC 18031 and tested using NIST SP 800-
      22.
      – Cardholder Selected PINs using guidance such as that provided in ISO
      9564


      * либо это результат надежной ключевой хэш-функции от номера карты и/или некоторых других данных
      * либо код был сгенерирован случайным образом в HSM (а там требуется использовать достаточно надежный ГПСЧ, чтобы не выдавать такие перлы чаще, чем того требует Великий Рандом :pray: :pray: :pray: ),
      * либо пользователь устанавливает код сам в терминале.

      Так что это просто совпадение, не более того. Вероятность порядка 10^-3.
      И Вы не одиноки, в мире миллион таких счастливчиков :)
      • 0
        Меня всегда мучил один вопрос — если правильно настроенная машинка сгенерирует пин вида 1111, 1234 или подобный — то по-прежнему это будет считаться как «все ок», если сделано по правилам?
  • 0
    Кстати к слову банки Вьетнама выдают карты с 6-значным пином. Российские банкоматы, как правило, к этому не готовы и верстка окна ввода ломается — однако пин проходит.
  • 0
    А чего бы сразу набор пина не сделать ввиде игры «Быки и Коровы».
  • НЛО прилетело и опубликовало эту надпись здесь
    • +1
      Я записываю в телефоне шифруя «мастер ключом» сложением :)
      Правда, потом могу забыть что зашифровал а что нет и удивляться почему не работает :)))
    • 0
      Последняя цифра квадрата числа? Т.е. 4 может означать как 2 так и 8? А 1 может означать как 1 так и 9? И как, карту не зажевал еще банкомат?
      • 0
        да, так себе алгоритм — 4 коллизии

      • НЛО прилетело и опубликовало эту надпись здесь
        • НЛО прилетело и опубликовало эту надпись здесь
          • 0
            попробуй продолжить
            5^2 = 25 => 5
            6^2 = 36 => 6
            7^2 = 49 => 9
            8^2 = 64 => 4
            9^2 = 81 => 1

            не замечаешь некоторой неоднозначности такого отображения?
    • 0
      Можно попробовать запомнить, какие цифры из номера карты есть в PIN
      • НЛО прилетело и опубликовало эту надпись здесь
  • +1
    Я пишу на карте.
    Например, пин 7526.
    Делим на любое число. Например, на два. Получим 3763.
    Записываем 3763'2.
    По бокам для усложнения рисуем любой цифровой бред. Например, ставим 12'.
    Итак, получим 12'3762'2'12. Эту хрень я записываю на карте. Только я знаю, что на что умножается.
    Комбинации могут быть любые, конечно же.
    • 0
      неплохой способ :)
    • 0
      Теперь не только вы знаете ;)
  • 0
    А ещё можно записывать пинкоды в телефонную книгу на мобильном телефоне под вымышленными именами. Например, +79031234567 где 1234 — пин.
    • 0
      У меня отец так делает. И не только с PIN кодами. >_<
  • 0
    Полоска на 25хх — буддистский календарь.
    Вообще, прикольное исследование.
  • 0
    А я по номерам букв алфавита запоминаю. Например 4216 это ГБАЕ, и обычно стараюсь запомнить как часть какого-либо слова. Дальше лезу в онлайн словарик и ищу по слову, тут получилась фамилия Шойдагбаева (Галина Бадмажаповна).
  • 0
    Есть метод хранения pin-кодов на бумажке, если у вас скажем больше 5 карт. Берем таблицу скажем 50x50 заполняем случайными числами, и некоторые места(которые знаем только мы) заменяем на pin-код(можно как в тетрисе, квадратом или прямой линией). В этом году на отборочных DefCon даже задачка была на эту тему разбор есть тут. И носим такую бумажку с собой в кармане.

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