Фото — Andre Hunter — Unsplash
Неизвестная длина пароля
Почти все сайты ввели ограничения по длине пароля. Джефф Этвуд (Jeff Atwood), автор Stack Overflow и блога Coding Horror отмечает, что минимальная планка в десять знаков снижает шанс ввода пользователем слабого или популярного пароля на 80%. Но есть ресурсы, которые сообщают о минимальной длине пароля, но не говорят о наличии верхнего порога. В подборке можно найти примеры сайтов крупных вендоров, где в поле ввода пароля разрешены фразы длиной до 20 символов. Но узнать об этом ограничении можно исключительно методом проб и ошибок.
Разработчики сайта электронной системы оплаты дорог в США пошли дальше. Поле для ввода пароля вообще обрезает «лишние» символы. Пользователи не сразу понимают, почему пароли не совпадают при их вводе в соответствующие поля. Аналогичная проблема есть на сайте одного новозеландского авиаперевозчика. Причем она проявляется не на всех страницах. Таких ресурсов много — резидент Hacker News отмечает, что уже сбился со счета, сколько раз ему приходилось вручную модифицировать JS-скрипты во вкладке Source браузера, чтобы пароли обрабатывались нормально.
Есть мнение, что проблема с «сокращения» паролей сокрыта в методе их хранения. Возможно, доступы лежат в открытом виде (без хеширования) — например, в базе данных с полем varchar.
Регулярная смена пароля
Считается, что если пароль надежен и не был засвечен в утечках, то менять его нет никакого смысла. В начале года от регулярной смены паролей отказались даже в Microsoft. Но по их стопам пошли не все. Например, американская фирма, разрабатывающая приложения для кредитных и ипотечных организаций, требует от пользователей менять пароль каждые полгода.
Один из резидентов Hacker News рассказывает, что в его компании нужно изменять пароль каждые три месяца. Это его сильно раздражает. При этом программное обеспечение, которое отвечает за ротацию, путает порядок специальных символов при сохранении новых аутентификационных данных. Войти под измененным паролем становится невозможно. Пока ситуацию не исправили, он вынужден использовать более слабые цифробуквенные фразы. Требование регулярно менять пароль приводит и к тому, что работники компании начинают переиспользовать прошлые идентификаторы. Другой пользователь HN рассказал, что работал с одним телекоммуникационным провайдером, где сотрудник для входа в учетную запись применял всего два пароля: «Apr1999!» или «Mar1999!». Они выполняли требования к паролям лишь формально: прописные и строчные буквы, цифры и символы.
Управление вводом
Достоверно неизвестно, как появилась практика блокировки вставки паролей. Инженеры из Национального центра кибербезопасности США отмечают, что никто не видел какой-то научной статьи, исследования, правила или RFC на эту тему. Они также говорят, что это — плохая практика, которая ухудшает безопасность. Посетители ресурса теряют возможность использовать парольные менеджеры и генераторы. В итоге они выбирают простые пароли, чтобы не терять время и быстрее получать доступ к ресурсам. В свое время против блокировки вставок также высказывались региональный директор Microsoft Трой Хант (Troy Hunt) и редактор Wired Джозеф Кокс (Joseph Cox).
Фото — Matthew Brodeur — Unsplash
Отметим, что обойти проблему может плагин Don’t F*ck With Paste для Chrome и Firefox. Также задачу можно решить вручную в настройках. Например, для «огненной лисы» флаг about:config: dom.event.clipboardevents.enabled нужно переключить на false. Однако это может нарушить работу «копировать/вставить» в Google Docs. Для борьбы с блокировкой copy/paste один из резидентов Hacker News написал собственный скрипт — AutoHotKey. Он читает данные из буфера обмена, а потом печатает их друг за другом в поле ввода с задержкой в 100–200 мс.
Кто стандартизирует парольные политики
Существуют организации, которые разрабатывают стандарты для работы с паролями. Например, Национальный институт стандартов и технологий США (NIST) составляет фреймворк NIST 800-63B. Он гласит, что длина пароля должна быть не менее восьми символов. При этом сайты просят устанавливать максимальную длину пароля как минимум на уровне 64 знаков.
Выбранный пароль не должен входить в список наиболее популярных фраз и содержать повторные буквы и цифры («aaaaaa» или «1234abcd»). Краткую выжимку с объяснениями этих правил подготовили инженеры из Sophos — компании-производителя средств информационной безопасности серверов и ПК. Стандарту NIST уже следует множество сайтов. Например, ресурс login.gov, предоставляющий услуги аутентификации для правительственных порталов США.
Есть и другие фреймворки (например, HITRUST), но в них до сих пор остались устаревшие практики вроде регулярной ротации паролей. Но их, как и NIST, постепенно совершенствуют.
Дополнительное чтение в блоге 1cloud:
Что нового в Linux kernel 5.3
«Как мы строим IaaS»: материалы о работе 1cloud
Досмотр электронных устройств на границе — необходимость или нарушение прав человека?
Почему разработчики мейнстрим-браузера снова отказались от отображения поддомена
Комментарии (53)
Gryphon88
14.11.2019 00:03+2У меня несколько паролей разной сложности, в том числе модификации одного и того же с цифрами/спецсимволами и без, и меня дико бесит, что когда создаёшь аккаунт, выводит требования к паролю, а когда неверно вводишь пароль при авторизации — нет.
polearnik
14.11.2019 10:37что только не придумают люди лишь бы не пользоваться менеджером паролей
VolCh
14.11.2019 10:47Что только не придумают авторы менеджеров паролей лишь бы не сделать их удобными в использовании и надёжными как в плане защиты от несанкционированного доступа, так и в плане восстановления утраченного доступа.
polearnik
14.11.2019 13:38А что вам не хватает? В keepass xc в последних обновлениях ввели поддержку аппаратного ключа. Плюс удобное расширение в браузере. Да и по функционалу особых нареканий нет.
Gryphon88
14.11.2019 18:21Пароли должны храниться секурно и энергонезависимо. В голове вполне подходит.
polearnik
14.11.2019 20:40пароли также должны быть уникальны для каждого сайта. Поэтому хранение в голове не подходит. Использовать несколько паролей с модификациями тоже не подходит потому что довольно часто складываются ситуацию когда нужно использовать сразу несколько паролей. И в случае утечки ваших паролей злоумышленник сможет залогинится в большинство учеток.
Gryphon88
14.11.2019 22:06Вы про MitM или иное недоверенное оборудование?
polearnik
15.11.2019 09:21А сайты разве не используют Https? Да и вообще с таким уровнем паранои иметь всего пару паролей на все случаи жизни это как взаимоисключающие параграфы.
Вон пару лет назад была утечка паролей из майла. В дампе открытым текстом был мой пароль от почты к которой успешно был привязан вход на крипто биржу с парой битков на ней. Злоумышленик зашел на почту закинул биржу в игнор и поменял пароль к бирже.Ему оставалось подождать сутки и мои битки перешли бы к нему Хорошо что я заметил подозрительную активность и сменил все что можно на почте и на бирже. Но утекший пароль который до сих пор висит в сети повредил только почте а не 25-30% аккаунтов в сети.Gryphon88
15.11.2019 11:03Это не паранойя, паранойя была, когда я держал двух активных полноценных виртуалов :) Паролей не 2, а около десятка, плюс модификации, одна модификация используется максимум на двух сайтах. Почт тоже несколько, на разных сервисах и под разные задачи. Документов на почте нет, всё, связанное с деньгами, требует подтверждения на альтернативный адрес или по номеру телефону. Обычная сетевая гигиена, а ко всёму действительно важному надо иметь физический доступ, в идеале монопольный.
Eugney
14.11.2019 00:11+2Запрет вставки бесит неимоверно. Буквально на днях поставил кол приложению банка юникредит, в котором «в целях безопасности» запрещена вставка из буфера обмена, при переключении на другое приложение поле для ввода очищается, и вдобавок ко всему «приложение не поддерживает режим разделённого экрана». То есть единственный способ войти с длинным паролем из хранилки — это переписать его на бумажку, а потом с бумажки вводить.
nochkin
14.11.2019 00:26+1Все уже давно знают что надо бумажку с паролем приклеить на монитор. Тогда от руки писать надо только один раз.
Zenitchik
14.11.2019 14:28это переписать его на бумажку, а потом с бумажки вводить.
Распечатать на штрих-код, а потом считывать сканером, подключённым в разрыв клавиатурного шнура.
abrca
14.11.2019 17:26У Хоум Кредит в интернет-банке для физлиц похожая фигня — вставляешь логин из хранилки, переключаешь в неё для копирования пароля — возвращаешься, а поле для логина очищено. Но, зато работает обратная последовательность — сначала вставлять пароль, а затем логин — тогда нормально.
tuxi
14.11.2019 00:19+13 раза вводил вечером, ни разу не получилось. Только утром на свежую голову получилось ввести правильно.AlePil
14.11.2019 01:47да, к паролям TIMa надо привыкать. я что бы не мучаться начал использовать qr в том числе и расшифровку его на ноутах. Иначе с первого раза никак) ))
Areskoi
14.11.2019 00:22Из личного опыта: Несколько лет назад один крупный российский банк для входа в ИБ позволял создать только цифровой пароль длиной 6 символов. Ровно 6 цифр, ни больше, ни меньше. При этом требовал вводить его с виртуальной клавиатуры на странице и заставлял менять каждые 3 месяца. В конце концов банк отказался от этой дикости в требованиях к паролям. А другой менее крупный банк до сих пор для входа в ИБ требует пароль из 5 цифр. Конечно, они еще и код из СМС просят, но это все равно смехотворно.
VolCh
14.11.2019 01:25Бесит, когда ограничивают набор символов, процент или решётку использовать не дают…
Dotarev
14.11.2019 07:57+1Также бесит, когда заставляют вводить в пароль спецсимволы.
VolCh
14.11.2019 10:48Требование к наличию спецсимволов я ещё могу как-то объяснить с точки зрения увеличения количества комбинаций при одной длине, а вот запрет на них даже не знаю как.
Dotarev
14.11.2019 10:59Запрет на спецсимволы уменьшает общее количество комбинаций и, следовательно, энтропию пароля.
Вообще, энтропию пароля уменьшает любое заранее известное правило его формирования. Например, если заранее известно, что в пароле присутствуют спецсимволы, это значительно уменьшает поле поиска при брутфорсе.
Например, при длине пароля в 1 (один) символ и разрешении на символы в пароле — любые в кодировке UTF16, количество возможных комбинаций 1 112 064, а при наложении правила, которое меня бесит — всего 10. Есть разница?
Vlad800
14.11.2019 03:09Пароль должен генерироваться самим сайтом и отправляться пользователю на почту. Так же можно и периодически его менять. И конечно, никаких блокировок вставки. А вот чтобы я добавил, так это очищение буфера памяти уже после вставки пароля (в последнее его поле).
lovermann
14.11.2019 10:12Ну, как оно должно быть, никто сказать не может (кто судья?), разработчики в лице сайта/системы могут проявить заботу о безопасности и вводить какие-то подсказки по поводу длины пароля и его структуры, но когда мне директивно диктуют что-то делать, меня бесит.
Vlad800
14.11.2019 15:01Судья — пользователь сайта. Другого быть не может. Ему должно быть удобно и безопасно. И единственный вариант для этого — делать безопасный пароль за него, и отправлять на почту, откуда он всегда может быть скопирован. Это так надо делать при регистрации. Потом уже можно дать ему возможность поменять пароль на свой в любое время.
Alozar
14.11.2019 08:29+3О эта парольная политика…
У нас пароль нужно менять каждые 2 месяца, заменить «пароль» на «пароль1» нельзя, проверка на повторяемость паролей — 8 последних, ещё и какие-то требования к содержанию пароля (благо дело, что мои стандартные пароли им удовлетворяют). В результате я стал понимать людей, которые записывают пароль на листочек. При этом поддержка постоянно долбит мозг безопасникам, что такая парольная политика только уменьшает защищённость, но у тех видимо развита болезнь «Безопасник головного мозга».maxzh83
14.11.2019 11:02+1благо дело, что мои стандартные пароли им удовлетворяют
Сколько же их у вас, если каждые 2 месяца надо менять?
Я помню был выбешен QIWI, которые требовали менять пароли раз в полгода и нельзя было использовать ни один из ранее использованных. Это реально ухудшает безопасность. Сейчас поправили, можно старые вводитьshaggyone
14.11.2019 11:53Как вариант:
стандартный_пароль_один, стандартный_пароль_дваmaxzh83
14.11.2019 12:20заменить «пароль» на «пароль1» нельзя
shaggyone
14.11.2019 12:37А на пароль_один?
Ну правда, каким образом можно определить, что пароль сделан из предыдущего, при условии что предыдущий надёжно зашифрован. Скорее всего хэш для самых простых форм вроде «пароль1» сохраняют, а пароль_один нет. Если не подойдёт можно пароль_uno, пароль_адын и т.п…
xenon
14.11.2019 15:51а заменить «пароль0» на «пароль1» — можно?
просто если и это нельзя — то, кажется, у вас там большие проблемы.
mistergrim
14.11.2019 10:17Рискую нарваться на минусы, но больше всего в парольных полях бесят звёздочки. Ну вот пару раз в жизни у меня стояли за спиной, когда я ввожу пароль, так сделайте Opt-In галочку на этот случай.
Пожалуй, уточню: имеется в виду случай, когда нужно задать пароль. Хотя и ввести, как правило, тоже.Alozar
14.11.2019 10:23Звёздочки хотя бы видны. Бывают случаи, когда курсор вообще не двигается и непонятно символ добавлен или нет.
Victor_koly
14.11.2019 10:30+1Да, как сказали выше — любая консоль Linux не показывает звёздочки.
А что в Win 10 есть всегда «показать пароль» — это хорошо.
Victor_koly
14.11.2019 10:28Такой себе сайт virusinfo.info советовал поменять пароль, если его не меняли 1 год. Или все же требовал, точно не помню.
И да, пароли на листочке или даже хуже.
MaZaNaX
14.11.2019 11:29+1Очень бесит верхнее ограничение длины пароля. Недавно столкнулся с таким в Origin.
Или когда запрещают использовать спец.символыnealzzze
14.11.2019 13:05вот Origin совсем разочаровал меня своим ограничением в максимум 16 символов. У меня уже давно ни одного стандартного пароля под их требования нет, приходится чуть ли не каждый раз через восстановление заходить
MadBambula
14.11.2019 12:12Политика работы с паролем у Skype менялась на протяжении жизни, но я как-то в один момент чуть не разбил телефон, пытаясь поменять пароль:
Skype: Введите новый пароль
Я: пароль
Skype: Пароль должен содержать цифры
Я: пароль123
Skype: Пароль должен содержать хотя бы одну заглавную
Я: Пароль123
Skype: Пароль похож на предыдущий пароль, придумайте уникальный
Я: П@роль123
Skype: Пароль не должен содержать спецсимволы
Я: ДаЕшкинКотДайЖеМнеПарольПоменять123
Skype: Слишком длинный пароль…
Занавес
kvghabr
14.11.2019 17:09При столько интенсивной цифровизации, пароли постепенно будут отходить на второй план.
NightSkyST
16.11.2019 20:0460 дней до экспайра пароля не только на рабочей станции, но и на серверах, длинна 12 символов с обязательным наличием всех возможных типов знаков, новый пароль не должен соответствовать 10ти предыдущим… Зоопарк не только серверов, но и паролей.
Психанул и взял обычный пароль, взял для него кастомный алфавит шифра Цезаря дописав в него спец символы, а дальше 1 и тот же пароль со смещением при каждой итерации. Единственное облегчение при этом — всегда знаешь изначальный пароль, главное помнить итерацию и, соответственно, смешение.Gryphon88
16.11.2019 20:41Спасибо за способ, удобно. А номер итерации можно дописывать к текущему паролю.
MonkAlex
К паролям, вспомнилось.
На работе блокирую ПК, когда отхожу. Монитор гаснет через минуту, наверное.
Возвращаюсь, клацаю «энтер», ввожу пароль, ещё раз «энтер». Жду несколько секунд, монитор наконец то включается, а там сообщение о неверном пароле.
Недавно наконец то разобрался с проблемой — первые несколько нажатий почему то не обрабатываются, что для ввода пароля критично, ясное дело. Такой проблемы не было на Windows7, такой проблемы нет на домашнем ПК (Win10), где требуется ввод пинкода, а не пароля. Чем провинился рабочий комп с Windows10, я не знаю, но нервы треплет изрядно, потому что привычке очень много лет.
VBKesha
Может USB засыпает для сохранения энергии, и при просыпании пропускается пару символов.
CaptainFlint
Это какая-то особенность Win10. Если экран заблокирован, то первым нажатием надо обязательно разблокировать (первый луч в сторону разработчиков этой системы; в семёрке-то просто сразу начинаешь вводить пароль без лишних действий). Примерно с полсекунды-секунду винда соображает (видимо, это требует немеряного количества вычислений — убрать одно окно и отобразить другое, с картинкой и полем ввода). В течение этого времени любой ввод с клавиатуры уходит в /dev/null (пардон, в NUL, конечно же). И более того, в самом конце, когда экран ввода пароля уже начал отрисовываться, если попасть нажатием клавиши в какую-то долю секунды отрисовки, он может эту букву ввести в поле пароля и тут же выделить её. Так что ввод следующей буквы не допишется к ней, а заменит.
В общем, нефиг тут на клавиатурах строчить, господа айтишники. Ишь какие, больше всех им надо! Делайте, как обычные пользователи, не дёргайтесь, терпеливо ждите, вводите буковки одним пальцем по штуке в несколько секунд, и будет вам счастье.
MonkAlex
О, так я не один такой =)
А решения проблемы не нашли, кроме как подождать? Пару секунд подождать, конечно, можно, но непривычно и как то глупо — у меня тут мощный проц и SSD, чего я жду то =_=
CaptainFlint
Увы, нет. Я в основном разблокирую дактилоскопическим сенсором, он-то срабатывает и на лок-экране. Но вот если три раза неудачно приложил палец и он не определился (очередной луч тем, кто установил такой низкий порог числа попыток, который запрещено увеличивать), добро пожаловать в старый добрый ввод пароля (точнее, пина в данном случае). «Вам нужно ввести пин» — ну так покажи ж ты мне поле ввода, чтоб я его сразу и начал вводить, тудыть твою перетудыть! Не-ет, у пользователя надо стрессоусточивость тренировать…
С ужасом ожидаю того дня, когда у меня не останется возможности использовать Семёрку на своём основном десктопе из-за неподдерживаемых драйверов или нужных мне программ. :-(