Почему банковские пароли такие слабые? - PullRequest
21 голосов
/ 04 декабря 2008

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

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

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

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

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

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

Ответы [ 5 ]

39 голосов
/ 21 июля 2009

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

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

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

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

33 голосов
/ 04 декабря 2008

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

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

10 голосов
/ 21 июля 2009

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

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

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

7 голосов
/ 04 декабря 2008

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

2 голосов
/ 21 июля 2009

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

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

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