Почему банковские пароли такие слабые?

Из интереса и из-за того, что это меня бесит, мне было интересно, может ли кто-нибудь здесь работать на банк или иным образом знать ответ на этот вопрос.

Я использовал несколько сайтов онлайн-банкинга (Великобритания и Северная Америка), и они повсеместно применяют шаблон паролей /[\w\d]{6,8}/ Иногда, может быть, вы используете подчеркивание, но никогда не получаете /.{6,20}/ что вы получаете (более или менее) практически с каждым банковским сайтом!

Мне сказали, что это связано с местом для хранения, но математика, кажется, не поддерживает это. Предполагая, что банки хранят теневые таблицы для вашей записи пароля, скажем, великодушно скажем, в среднем 10 для каждой учетной записи, затем удвоение разрешенной длины пароля и удвоение ширины набора символов на основе существующего 8-разрядного 8-битного формата означает дополнительные 11*2*8 = 176 байт на учетную запись, поэтому ~168 МБ на 1M учетных записей. Допустим, это гигантский банк, поддерживающий 100 миллионов счетов - это все еще только 16 ГБ!

Это не может быть так просто, не так ли? Конечно, мои цифры не соответствуют действительности.

Или ответ здесь заключается в том, что банки, являющиеся банками, не имеют для этого более веских оснований, чем те, которые разносят динозавров.

Кто-нибудь знает техническую причину, почему мой пароль для www.random.com/forum надежнее, чем пароль для моего банка?

5 ответов

Решение

Я на самом деле работаю в банке прямо сейчас, и работал в прошлом немало.

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

Если истории, которые я слышал о некоторых банках, являются правдой...

Это потому, что когда вы вводите свой пароль:

  • Веб-сервер отправляет его по последовательному кабелю длиной в полукилометра на старый 386 в заброшенном офисе с пользовательским интерфейсом (скомпилированным с использованием специально взломанной версии Borland C 1.0), который использовался менеджерами банков в 1989 году, что У него нет последовательного интерфейса, поэтому он должен проходить через другое устройство, которое имитирует нажатия клавиш на клавиатуре AT.
  • Эта программа вставляет ваш запрос, включая ваш пароль (зашифрованный с использованием нестандартного алгоритма, который слишком слаб, чтобы его нельзя было использовать, но который нельзя отключить в программном обеспечении) в базу данных FoxPro на файловом сервере NetWare в другом заброшенном офисе на противоположном конце здание (только потому, что оно рухнет, если они попытаются его переместить.)
  • Вернувшись в 1-й заброшенный офис, еще один старый 386, постоянно опрашивающий базу данных FoxPro на предмет новых записей, обнаруживает этот запрос и перенаправляет его по еще более медленному последовательному кабелю (на этот раз в EBCDIC) в другой ящик в 3-м офисе, который эмулирует работающий PDP11. фактическая программа COBOL, которая поддерживает учетные записи.
  • К сожалению, им также все еще нужен настоящий PDP11, потому что у него был собственный микрокод для другого алгоритма безопасного шифрования (который они не могут извлечь, или устройство защиты от взлома сотрет его.) PDP11 не может справиться с увеличенной рабочей нагрузкой всех открытых учетных записей. с 1981 года (года их первой неудачной попытки удалить его), а теперь (через еще один слой экранных скребков и эмулированных жестких дисков) его обманом удается выполнить подмножество функций (включая проверку пароля) от имени главного сервера.

Таким образом, ваш пароль может использовать только общее подмножество наборов символов, поддерживаемых всеми этими системами, и может быть только до тех пор, пока задействовано самое короткое поле базы данных.

Банки используют онлайн-сервисы главным образом как интерфейс к устаревшим системам. Ваш пароль, вероятно, обрабатывается где-то мэйнфреймом IBM, написанным на Cobol, и структура пароля, возможно, была разработана в 70-х годах.

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

В одном банке, в котором я работал, рабочий пароль был таким же, как и идентификатор пользователя (та же идея, что и при входе в систему с правами root и root). Пользовательские пароли могут быть сброшены в режиме онлайн на комбинацию первых N букв вашей фамилии + последних 4 цифр вашего SSN, поэтому любой пользователь может сбросить ваш пароль, если он знает ваше имя, SSN и логин как вас.

Вероятно, большинство банковских систем было разработано давно, когда 8-символьные пароли считались защищенными. Я не думаю, что кто-то подумает, что пароли с банковских счетов в любом случае будут перебором, 8 символов - это все же много. Бьюсь об заклад, все банки блокируют счет после 3 попыток или около того.

Вот ошибка, в которую я вошел в Bugzilla относительно сайта, который я недавно создал для клиента (к счастью, не для банка!):

"Кажется, что пользователь вынужден использовать! Или _ в своем пароле *, что мне немного странно. Может ли это быть обновлено так, что это 6 - 8-значный пароль, который может использовать только буквенно-цифровые символы?"

  • На самом деле это был хотя бы один не буквенно-цифровой символ
Другие вопросы по тегам