В этой статье отобраны политики, которые задают правила, управляющие содержимым паролей, и которые обязательны при создании пользователями новых паролей в Windows версий 95, 98 и ME. |
Создать пароли для входа в систему в Windows можно двумя способами. Первое: при первоначальной загрузке Windows на приглашение ввести пароль, задать имя пользователя, под которым еще не регистрировались в системе. Если какое-то имя участвовало в регистрации, то потребуется ввести существующий пароль, а не новый. Второе: в "Панели Управления" выбрать приложение "Пароли" и в нем зайти на страницу "Смена паролей" и далее нажать кнопку "Смена пароля Windows" для смены уже существующего. Следует отметить, что не стоит всерьез полагаться на парольную защиту в Windows 95, 98 и ME. Обойти диалоговое окно можно, нажав кнопку отмены. В этих версиях Windows пароль дает право доступа к сети и сетевым ресурсам и неправильно введенный пароль не даст доступа к сети и не более. К локальным ресурсам можно добраться и без всякого пароля. |
Немного теории. Для атаки на пароли применяют два основных метода: "атака по словарю", которая проводится, когда имеется "рабочая гипотеза" о том, что в пароле присутствуют слова, которые могут быть в словаре и идет "перебор по словарю", и атака "грубой силой", когда берется гипотеза о том, что набор символов в пароле случаен. Если в пароле не присутствуют слова, то стойкость пароля к взлому определяется количеством возможных вариантов. Далее, если K- число символов в пароле, N - размер множества символов, которые могут быть использованы при его создании, то количество вариантов пароля определяется формулой: S = NK . Если отойти от математической строгости и перейти к бытовому языку, то можно выдать следующее правило: чем, больше несовпадающих символов задействовано при создании пароля, и чем больше символов в пароле, тем большая будет стойкость пароля к взлому. |
Алфавитно-цифровой пароль Windows |
Эта системная политика применима в Windows версий 95, 98, ME. При активизации она задает следующее правило: во вновь создаваемом пароле должны обязательно присутствовать как цифры, так и символы алфавита. |
Эта политика имеет одно исключение при условии, что не задана минимальная длина пароля. Состояние этой политки игнорируется, если при создании пароля, в ответ на приглашение задать новый пароль, ввести пустой, нажимая клавишу "Enter". Это делается для того, чтобы диалоговое окно для ввода пароля больше не появлялось при первоначальной загрузке Windows. |
Состояние этой политики хранится в параметре "AlphanumPwds", который должен содержаться в ключе "Software\Microsoft\Windows\CurrentVersion\Policies\Network" системного реестра. Этот ключ находится в разделе HKEY_LOCAL_MACHINE и действие системной политки распространяется на всю систему в целом. Параметр может быть как целочисленного, с парой булевых значений "1" и "0", так и бинарного типа с парой булевых значений "01 00 00 00" и "00 00 00 00". Первое значение в приведенных парах отвечает за активное состояние, второе - за неактивное состояние политики. "По умолчанию" в системе политика находится в неактивном состоянии. Это то же самое, что отсутствие параметра в системном реестре. |
Если параметр "AlphanumPwds" сделать строкового типа, то эта системная политика обнаруживает аномальное поведение. Пустая строка или содержимое строки "true", "false" приводит политику в неактивное состояние, содержимое "yes", "no", "1", "0" - в активное. Случайное содержимое приводило политику в неактивное состояние. Для эксперимента я брал подстроки "alpha", "were", "политика1". Регистр символов значения не имел. |
Минимальная длина пароля в Windows |
Эта системная политика, как и предыдущая, создана для Windows версий 95, 98, ME. Она задает минимальную длину создаваемого пароля, другими словами, наименьшее количество символов, которые должны составить новый пароль. |
За состояние этой политики отвечает параметр "MinPwdLen", который должен находиться в ключе "Software\Microsoft\Windows\CurrentVersion\Policies\Network" в разделе HKEY_LOCAL_MACHINE. При активизации действие системной политки распространяется на всю систему в целом. Параметр может быть как целочисленного, так и бинарного типа. Диапазон значений, которые может принимать параметр "MinPwdLen": от "0" до "99". Хотя с целочисленными значениями работать гораздо проще, можно задавать и бинарные значения в виде "03" или "02 00 00 00". |
Верхний предел "99" не входит в число значений, которые можно задавать для минимальной длины пароля. Если задать значение "99" или выше, то поведение политики становиться хаотичным. Для тестирования корректной работы политики я задал следующий ряд значений: 98, 99, 101. Минимальная длина пароля, затребованная Windows, была: 98, 153, 257 соответственно. |
Если создать параметр "MinPwdLen" строкового типа, то у политики наблюдается курьезное поведение. Пустая строка приводит политику в неактивное состояние. Значение "1", хранящееся в строковом параметре, при попытке создать новый пароль, приводит к сообщению, что требуется пароль минимум 49 (!) символов, значение "3" - минимум 51, "5", что необходимо 53 символа. Я не стал дальше продолжать эксперимент, но полагаю, эта пример такой "зависимости" показателен. Эксперименты проводились на Windows версии 4.90.3000 (Windows ME). |
Для справки: в Windows 2000 минимальная длина пароля лежит в пределах от "0" до "14". |
Отсутствие параметра "MinPwdLen" снимает ограничения на минимальную длину пароля. По умолчанию эта политика в системе не задействована. |
Если значение параметра задать больше "0", то невозможно создать пустой пароль, нажимая в ответ на приглашение клавишу "Enter". |
Valient Newman |