все комбинации 4 значного кода
Все 10000 комбинаций из 4 цифр. Сложно ли угадать PIN-код
Несмотря на важную роль PIN-кодов в мировой инфраструктуре, до сих пор не проводилось академических исследований о том, как, собственно, люди выбирают PIN-коды.
Исследователи из университета Кембриджа Sören Preibusch и Ross Anderson исправили ситуацию, опубликовав первый в мире количественный анализ сложности угадывания 4-циферного банковского PIN-кода.
Используя данные об утечках паролей из небанковских источников и онлайн анкетирование, учёные выяснили, что к выбору PIN-кодов пользователи относятся гораздо серьёзнее, чем к выбору паролей для веб-сайтов: большинство кодов содержат практически случайный набор цифр. Тем не менее, среди исходных данных присутствуют и простые комбинации, и дни рождения, — то есть, при некотором везении злоумышленник может просто угадать заветный код.
Итак, пользователи выбирают 4-циферные коды на основе всего нескольких простых факторов. Если бы так выбирались и банковские PIN-коды, 8-9% из них можно было бы угадать всего за три попытки! Но, конечно, к банковским кодам люди относятся гораздо внимательнее. Ввиду отсутствия сколько-нибудь большого набора настоящих банковских данных, исследователи опросили более 1300 человек, чтобы оценить, насколько реальные 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-кодов
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-код, чем угадывать его. Но и от подглядывания можно защититься — даже, казалось бы, в безвыходном положении:
Описание алгоритма генерации под калькулятором.
Алгоритм
Друзья! Раз уж есть у меня этот мертвый блокнот, использую-ка я его для того, чтобы задать вам задачку, над которой вчера билось три физика, два экономиста, один политеховский и один гуманитарий. Мы сломали себе весь мозг и у нас постоянно получаются разные результаты. Может быть, среди вас есть программисты и математические гении, к тому же, задачка вообще школьная и очень легкая, у нас просто не выводится формула. Потому что мы бросили занятия точными науками и вместо этого зачем-то пишем книги и рисуем картины. Простите.
Собственно, суть вопроса. Какова вероятность угадывания (в любом порядке) четырех чисел, содержащихся в четырехзначном числе?
Или еще конкретнее. Мне нужно четыре раза угадать одну цифру из десяти. Но не подряд.
Пожалуйста, подкрепите свои ответы и рассуждения какими-нибудь точными формулами, потому что мы вчера и так чуть не свихнулись. Заранее всем большое спасибо!
Популярные и редкие PIN-коды: статистический анализ
Xakep #269. Реверс-шелл на 237 байт
Не секрет, что пользователи выбирают числовые пароли, используя характерные паттерны. В случае четырёхзначного PIN-кода очень часто указывается день рождения или год рождения.
До настоящего момента все исследования в этой области были фрагментарными, на основе относительно небольших выборок данных. Американская компания Data Genetics несколько дней назад опубликовала наиболее полный и масштабный статистический анализ PIN-кодов, использовав все доступные базы данных с паролями и отфильтровав их по цифровым комбинациям от 0000 до 9999. Общая база после применения фильтра составила 3,4 миллиона PIN-кодов.
Анализ позволил выявить несколько интересных фактов. Самым популярным PIN-кодом является 1234, его устанавливают почти 11% пользователей. На втором месте идёт 1111 (6%).
Двадцатка самых популярных комбинаций покрывает 26,83% всех паролей, хотя при нормальном статистическом распределении она составляла бы всего 0,2%. На следующей диаграмме показана кумулятивная частотность использования паролей.
Интересно также посмотреть на список самых редких PIN-кодов по всей базе.
Анализ PIN-кодов(часть 1)
Недавно мой хороший друг lan скинул мне шуточную новость. В заголовке новости было написано что-то типа:
“PIN-коды всех кредитных карт в мире похищены!”
Недавно мой хороший друг lan скинул мне шуточную новость. В заголовке новости было написано что-то типа:
“PIN-коды всех кредитных карт в мире похищены!”
В самой же новости было просто перечислены украденные PIN-коды: 0000 0001 0002 0003 0004…
Новость lan’а рассмешила меня. В этот же день, но чуть позже, я прочитал вот этот комикс на XKCD. После прочтения двух забавных историй у меня и появилась идея написать статью.
− Зацени мой номерной знак!
− Никто не сможет правильно запомнить номер моей машины! Я могу совершить любое преступление, какое только захочу!
− Номер машины вора вроде бы полностью состоял из ‘1’.
− А! Так это тот самый парень!
− Его адрес записан в блокноте, который лежит в патрульной машине.
Какой PIN-код встречается реже всего?
Всего из 10 цифр можно составить 10 000 различных четырехзначных PIN-кодов. Из этих десяти тысяч, какие PIN-коды встречаются реже всего?
Какой из 10 000 PIN-кодов люди используют реже всего?
Какой из 10 000 PIN-кодов люди используют чаще всего?
Если бы перед вами стояла задача найти PIN-код кредитной карточки за кратчайшее время, то в каком порядке вы бы перебирали все возможные PIN-коды?
Если бы вас спросили, какой четырехзначный PIN-код встречается реже всего, то что бы вы ответили?
Все эти вопросы тесно связаны с вышеупомянутым комиксом с XKCD. В комиксе план преступника провалился, потому что его номерной знак был слишком уникальным и, как следствие, слишком запоминающимся. Какой номерной знак запоминается тяжелее всего? Спросите любого знакомого шпиона J, как лучше всего затеряться в толпе? Ответ будет вполне ожидаемым: быть “нормальным” и ничем не выделяться.
Всем известно, что людям плохо удается придумывать случайные пароли. Я надеюсь, что после прочтения статьи вы станете чуточку аккуратнее выбирать ваш следующий PIN-код.
Вам все еще интересно, какой PIN-код встречается реже всего?
А какой самый популярный?
Если да, то читайте дальше…
Настоящая статья не является библией хакеров и не предназначена для использования в качестве средства, инструмента или источника информации для потенциальных воров в их грязных делишках. Информации, которую я раскрою, будет достаточно только для подтверждения моей точки зрения и для примеров. Я не хочу, чтоб моей информацией воспользовались скрипт-кидди. Пожалуйста, не тратьте свое время и не спрашивайте у меня, какую именно базу данных я использовал, я вам все равно не отвечу. И я не собираюсь продавать, дарить или публиковать исходные данные – даже не просите!
Доступа к базе данных PIN-кодов кредитных карт у меня, конечно же, нет. Я пойду немного по другому пути. Источником будут служить данные из опубликованных/раскрытых таблиц паролей и из других утечек баз данных.
Утечки баз данных с паролями
За последнее время было найдено множество уязвимостей безопасности в базах данных с паролями: некоторые уязвимости получили широкую огласку, другие – не очень. Но у всех утечек есть одна общая черта: за них пришлось заплатить высокую цену, складывающуюся как из непосредственных штрафов, так и из косвенных убытков, связанных с ухудшением репутации фирмы.
Лично я не позволю обвести меня вокруг пальца даже один раз, не говоря уж о двух… Скажу даже больше: любой разработчик, пароли которого хранятся в базе данных незашифрованными, не имеет права спать спокойно, пока он не исправит это чудовищное недоразумение. Более того, вы просто обязаны учиться на чужих ошибках и не допускать, чтобы обнаруженная уязвимость не была обнаружена еще один раз у вас.
Если вы, как работник компании, знаете, что к защите базы данных с паролями ваших клиентов подошли поверхностно, тогда идите, а лучше бегите к вашему начальству, изо всех сил колотите в дверь кулаками и настаивайте, чтобы уязвимость была исправлена как можно быстрее. Не ждите, пока не станет уже слишком поздно. Стойте на своем. Будьте приставучими, как репей.
Сейчас я не пытаюсь разрекламировать себя, как консультанта (хотя мои услуги достаточно недорогие по сравнению со стоимостью адвокатской защиты, коллективного иска, штрафов и санкции, оттока капитала и удара по репутации). Найти хорошего специалиста по безопасности, который поможет вам, сейчас не проблема (если вы не знаете, откуда копать, то я бы посоветовал вам начать со специалистов CISSP).
Вывод: защита должна быть многоуровневой. И простое шифрование таблицы с паролями пользователей позволит защитить ваших клиентов, даже если база утечет. Шифрование не защищает от всех возможных атак, но и вреда оно тоже не приносит. Какой тогда смысл хранить пароли незашифрованными?
Вернемся к выборке
Из всех баз данных с паролями учетных записей я выбрал только те записи, в которых пароль пользователя состоял из 4 цифр 2. Результаты выборки были объединены в отдельную базу данных четырехзначных паролей.
Отсюда и далее мы будем считать, что четырехзначные пароли и PIN-коды это суть одно и то же.
Мне удалось найти около 3,4 миллиона четырехзначных паролей. Каждый из паролей представляет собой комбинацию из 4 цифр от 0000 до 9999.
Самый популярный пароль: 1234…
…просто поразительно, насколько популярен такой пароль. А что еще поразительнее, так это нехватка воображения у людей его выбирающих…
… 1234 составляет около 11% от 3,4 миллиона всех паролей.
Следующий по популярности четырехзначный пароль – 1111, около 6% от всей выборки.
Третье место занимает пароль 0000 с 2%.
есть пароль из четырех цифр, вводить можно только 1-2-3-4
1111 1112 1113 1114 1121 1122 1123 1124 1131 1132 1133 1134 1141 1142 1143 1144 1211 1212 1213 1214 1221 1222 1223 1224 1231 1232 1233 1234 1241 1242 1243 1244 1311 1312 1313 1314 1321 1322 1323 1324 1331 1332 1333 1334 1341 1342 1343 1344 1411 1412 1413 1414 1421 1422 1423 1424 1431 1432 1433 1434 1441 1442 1443 1444 2111 2112 2113 2114 2121 2122 2123 2124 2131 2132 2133 2134 2141 2142 2143 2144 2211 2212 2213 2214 2221 2222 2223 2224 2231 2232 2233 2234 2241 2242 2243 2244 2311 2312 2313 2314 2321 2322 2323 2324 2331 2332 2333 2334 2341 2342 2343 2344 2411 2412 2413 2414 2421 2422 2423 2424 2431 2432 2433 2434 2441 2442 2443 2444 3111 3112 3113 3114 3121 3122 3123 3124 3131 3132 3133 3134 3141 3142 3143 3144 3211 3212 3213 3214 3221 3222 3223 3224 3231 3232 3233 3234 3241 3242 3243 3244 3311 3312 3313 3314 3321 3322 3323 3324 3331 3332 3333 3334 3341 3342 3343 3344 3411 3412 3413 3414 3421 3422 3423 3424 3431 3432 3433 3434 3441 3442 3443 3444 4111 4112 4113 4114 4121 4122 4123 4124 4131 4132 4133 4134 4141 4142 4143 4144 4211 4212 4213 4214 4221 4222 4223 4224 4231 4232 4233 4234 4241 4242 4243 4244 4311 4312 4313 4314 4321 4322 4323 4324 4331 4332 4333 4334 4341 4342 4343 4344 4411 4412 4413 4414 4421 4422 4423 4424 4431 4432 4433 4434 4441 4442 4443 4444
Если кодовый замок является 4-х разрядным, то количество всех возможных комбинаций n можно определить по формуле:
n = 4 в степени 4 = 4 * 4 * 4 * 4 = 256
Значит, у четырёхзначного кодового замка может быть 256 комбинаций.
Все комбинации из 4 чисел. Где можно достать все комбинации из 4 чисел?
Например в вашем компьютере. Допустим, с помощью экселя Несложно, не вручную же их составлять.
Или используется только 4 цифры, но тогда сколько знаков требуется? Ведь если возьмете, допустим цифры 1, 2, 3 и 4, то из них можно составить бесконечное число комбинаций если не задано конечное число знаков. Например 123412341234 итд
Надеюсь Вы не имели в виду сколько комбинаций из 4х чисел или знаков можно всего составить без повторов, потому, как такое на пальцах находится. Это n! то есть факториал числа Ваших цифр. Факториал
А какие же это комбинации. для 24 вариантов, можно на вскидку вот хоть так набросать:
1234
1243
1324
1342
1423
1432
..
2341
2314
2134
2143
2423
2432
.
3241
3214
3124
3142
3421
3412
.
4123
4132
4213
4231
4321
4312
Что то примерно так. надеюсь без опечаток. проверять лень.
Ну а для большего числа чисел, повторю, самое простое делать в Экселе. Там все для этого есть. Ну а если владеете программированием можно и простенькую программу составить на любом Вам известном языке.
Не сложно и тоже самое. но с возможностью повторов, то есть с допустимостью комбинаций 1111 или 1212. только это будет, если строго, уже не из 4х разных чисел. Надеюсь эксель у Вас под рукой, потому что мне лень, Ну а если хотите можете сами. даже вручную дополнить 24 приведенных комбинации, еще и теми. в которых есть повторы. Кстати. можете для развлечения сосчитать их число.
Ну а так. комбинаторика Вам в помощь. Бывают и готовые таблицы. Только пока ищете. скорее сами составите.