Теория и практика аудита и восстановления паролей Windows NT/2000/XP/2003
nh
🕛 27.10.2006, 11:09
Операционные системы Windows NT/2000/XP/2003 хранят пароли в зашифрованном виде, называемом хэшами паролей (hash (англ.) - смесь, мешанина). Пароли не могут быть получены непосредственно из хэшей. Восстановление паролей заключается в вычислении хэшей по возможным паролям и сравнении их с имеющимися хэшами паролей. Аудит паролей включает в себя проверку возможных путей получения информации об учетных записях пользователей, результатом восстановления паролей является их представление в явном виде с учетом регистра. Получение хэшей паролей
Существует несколько путей получения хэшей паролей, зависящих от их местонахождения и имеющегося доступа. Хэши паролей могут быть получены следующими способами: из файла SAM или его резервной копии, непосредственно из реестра операционной системы локального или удаленного компьютера, из реестра или Active Directory локального или удаленного компьютера внедрением DLL, посредством перехвата аутентификационных пакетов в сети.
Получение хэшей паролей из файла SAM
Учетные записи пользователей, содержащие в том числе имена пользователей и их пароли, хранятся в реестре Windows NT/2000/XP/2003, а именно в той его части, которая находится в файле SAM (Security Account Manager (англ.) - диспетчер защиты учетных записей). Этот файл можно найти на диске в каталоге %SystemRoot%\system32\config, на диске аварийного восстановления системы или на резервной магнитной ленте.
К файлу SAM в каталоге %SystemRoot%\system32\config нельзя получить доступ, пока Windows NT/2000/XP/2003 загружена, так как он открыт операционной системой. Если имеется физический доступ к машине, необходимо скопировать файл, загрузив на этой машине другую копию операционной системы или другую операционную систему. Если Windows NT/2000/XP/2003 установлена на диске с файловой системой NTFS, то для MS-DOS и Windows 95/98/Me дополнительно нужны программы, обеспечивающие доступ к диску с NTFS из этих операционных систем. В MS-DOS могут быть использованы NTFSDOS и NTFSDOS Professional, в Windows 95/98/Me - NTFS for Windows 98 (авторами являются Mark Russinovich, Bryce Cogswell). Для доступа из операционной системы Linux требуется включение поддержки NTFS. Также можно загрузиться с дискеты и скопировать файл SAM, предварительно запустив обеспечивающую доступ к разделам с NTFS программу. После этого нужно выполнить импорт файла SAM. Извлечение хэшей паролей из файла SAM было разработано и впервые реализовано в программе SAMDump (автор Дмитрий Андрианов). При импорте файла SAM осуществляется получение списка учетных записей пользователей, содержащихся в файле SAM. Процесс импорта файла SAM подобен получению хэшей паролей методом pwdump за исключением того, что вместо функций Windows API, обеспечивающих работу с реестром Windows, используется их эмуляция. При выполнении импорта файла SAM из программы SAMDump все нелатинские буквы, имеющиеся в именах пользователей, будут искажены. Программа LCP лишена этого недостатка.
Способом получения файла SAM в операционной системе Windows NT, не требующим перезагрузки машины, является копирование его из каталога %SystemRoot%\repair или с диска аварийного восстановления. Каждый раз, когда в Windows NT создается диск аварийного восстановления с помощью программы RDISK, файл SAM запаковывается и сохраняется в файл sam._, являющийся резервной копией файла SAM. Файл sam._ представляет из себя архив в формате cabinet. Этот файл может быть распакован командой "expand sam._ sam". Недостатком этого способа является то, что с момента создания диска аварийного восстановления пароли могли измениться и, возможно, файл sam._ содержит устаревшие данные. В программе LCP имеется встроенная возможность импорта файла SAM и из файла sam._, избавляющая от необходимости использования программы expand. При импорте списка учетных записей пользователей из файла sam._ он предварительно распаковывается, затем выполняется непосредственно импорт файла SAM.
Файл SAM также копируется, когда создается полная резервная копия. Если имеется доступ к резервной копии, можно восстановить файл SAM из %SystemRoot%\system32\config на другую машину и затем извлечь из него хэши паролей. Недостатком и этого способа также является то, что с момента последнего сеанса создания резервной копии пароли могли измениться.
Существует служебная программа SYSKEY, впервые появившаяся в составе Service Pack 3 для Windows NT. Программа SYSKEY дополнительно зашифровывает хэши паролей учетных записей, что делает бесполезным импорт файла SAM с помощью программы SAMDump. SYSKEY может использоваться в одном из трех вариантов:
сгенерированный ключ запуска записывается на локальный жесткий диск в реестр в зашифрованном виде;
для получения ключа запуска берется пароль, выбранный администратором и вводимый во время загрузки операционной системы;
сгенерированный ключ запуска записывается на дискету, которая должна быть вставлена во время загрузки операционной системы.
По умолчанию используется хранение ключа запуска в реестре. Подробнее о программе SYSKEY можно прочитать в статье KB143475 Windows NT System Key Permits Strong Encryption of the SAM.
Служебная программа SYSKEY в операционной системе Windows NT для дополнительной защиты паролей учетных записей после установки Service Pack соответствующей версии должна быть активизирована вручную. В операционных системах Windows 2000/XP/2003 программа SYSKEY изначально присутствует и активизирована.
Импорт файла SAM, дополнительно зашифрованного SYSKEY, впервые был реализован в программе SAMInside (авторами являются PolASoft и Ocean). Алгоритм SYSKEY первым опубликовал FlashSky из Xfocus Team. Для выполнения импорта при хранении ключа запуска в реестре необходимо открыть файлы SAM и SYSTEM, предварительно скопировав их из каталога %SystemRoot%\system32\config. Если недостаточно места на дискете, файлы могут быть сжаты до копирования. Резервные копии файлов также могут находиться в каталоге %SystemRoot%\repair, если ранее выполнялась архивация. При хранении ключа запуска на дискете кроме файла SAM нужен файл StartKey.Key для выполнения импорта.
Импорт файла SAM без дополнительного шифрования или с дополнительным шифрованием хэшей паролей при любом варианте хранения ключа запуска возможен в программе LCP.
Получение хэшей паролей из реестра операционной системы
При получении хэшей паролей из реестра операционной системы осуществляется непосредственный доступ к реестру. Для выполнения импорта информации необходимо иметь административные права на компьютере, дамп паролей учетных записей которого требуется создать. Если компьютер не является локальным, то должен быть разрешен удаленный доступ к реестру и иметься соответствующие права. Получение хэшей данным способом впервые стало возможным в программе pwdump (автор Jeremy Allison). При выполнении импорта информации этим способом с помощью программы pwdump имена пользователей, содержащие нелатинские буквы, будут искажены. Для получения хэшей паролей из реестра рекомендуется воспользоваться LCP.
Если программа SYSKEY активизирована, хэши паролей дополнительно зашифровываются. Выполнение импорта с помощью программы pwdump становится бесполезным, т.к. пароли по дополнительно зашифрованным хэшам восстановлены не будут. В программе LCP получение хэшей паролей из реестра доработано с учетом возможного дополнительного шифрования хэшей программой SYSKEY, поэтому рекомендуется использовать LCP.
Получение хэшей паролей внедрением DLL
Данный метод был разработан и реализован в программе pwdump2 (автор Todd A. Sabin). Получение хэшей паролей методом pwdump2 возможно вне зависимости от того, была активизирована программа SYSKEY или нет. Для создания дампа паролей методом pwdump2 необходимо иметь право SeDebugPrivilege. По умолчанию только пользователи группы администраторов имеют его, поэтому нужно иметь административные права для использования этого метода. Использование метода pwdump2 возможно только на локальной машине.
Метод pwdump2 использует для создания дампа паролей способ, называемый внедрением DLL. Один процесс вынуждает другой процесс (lsass.exe), используя его идентификатор процесса, загружать DLL (samdump.dll) и выполнять некоторый код из DLL в адресном пространстве другого процесса (lsass.exe). Загрузив samdump.dll в lsass (системная служба LSASS - Local Security Authority Subsystem), программа использует тот же самый внутренний API, что msv1_0.dll, чтобы обратиться к хэшам паролей. Это означает, что она может получить хэши без выполнения таких действий, как перемещение их из реестра и дешифрование. Программа не заботится ни о том, каковы алгоритмы шифрования, ни каковы ключи.
В версии программы pwdump2, поддерживающей Active Directory, имеется ошибка, не позволяющая получить хэши паролей, если в операционной системе есть учетные записи с нелатинскими буквами в именах. В программе LCP ошибка исправлена, поэтому получение хэшей паролей данным методом рекомендуется выполнять в ней.
Метод, использующийся в программе pwdump2, был доработан для получения хэшей паролей не только с локальной, но и с удаленной машины в программах pwdump3/pwdump3e (автор Phil Staubs). На удаленный компьютер копируются исполняемый файл службы и файл DLL. После копирования файлов на удаленном компьютере создается и запускается новая служба, выполняющая те же действия, что и программа pwdump2 на локальном компьютере. Далее выполняется удаление службы и файлов, ранее скопированных. Передача информации об учетных записях пользователей производится через раздел реестра на удаленном компьютере, временно создаваемый и уничтожаемый после завершения копирования данных. В программе pwdump3e выполняется дополнительное шифрование передаваемых данных по алгоритму Diffie-Hellman для сохранения конфиденциальности при их возможном перехвате при передаче по сети. Использование данного метода также требует административных прав на той машине, информацию об учетных записях пользователей с которой хочется получить.
При выполнении импорта информации этим способом с помощью программ pwdump3/pwdump3e имена пользователей, содержащие нелатинские буквы, будут искажены. Для получения хэшей паролей с удаленного компьютера внедрением DLL рекомендуется воспользоваться LCP.
Если административные права на локальном компьютере отсутствуют, можно воспользоваться уязвимостью операционных систем Windows NT/2000/XP/2003, заключающейся в замене экранной заставки, запускаемой при отсутствии регистрации пользователя операционной системы в течение некоторого времени (по умолчанию интервал времени составляет 15 минут для Windows NT/2000, 10 минут - для Windows XP/2003). Для этого файл %SystemRoot%\system32\logon.scr заменяется на требуемый исполняемый файл (например, cmd.exe), который будет запущен операционной системой вместо экранной заставки с правами системы. Замена может быть выполнена способом, используемым при копировании файла SAM. Доступ к диску с NTFS с возможностью записи осуществим с помощью NTFSDOS Professional или NTFS for Windows 98. Далее выполняются действия по получению хэшей методом pwdump2 или pwdump3/pwdump3e.
Перехват аутентификационных пакетов в сети
Даже если программа SYSKEY установлена и активизирована, не имеется необходимого доступа к удаленному или локальному компьютеру, существует возможность получения хэшей паролей учетных записей пользователей. Этим способом является перехват аутентификационных пакетов в сети (sniffing (англ.) - вынюхивание). Клиентская машина обменивается с сервером аутентификационными пакетами каждый раз, когда требуется подтверждение прав пользователя. Необходимо, чтобы компьютер находился в сетевом сегменте пользователя или ресурса, к которому он обращается. Программа для перехвата аутентификационных пакетов (sniffer (англ.) - вынюхиватель), встроенная в LC5, работает на машинах с Ethernet-адаптером и в Windows NT/2000/XP/2003, и в Windows 95/98/Me. Программу LC5 в режиме перехвата аутентификационных пакетов нужно оставить запущенной на некоторое время для сбора достаточного количества хэшей паролей. Полученные данные необходимо сохранить в файл, после чего в программе LCP выполнить импорт файла сеанса LC5.
Для препятствования получения хэшей паролей этим способом фирмой Microsoft было разработано расширение существующего механизма аутентификации, называемое NTLMv2. Его использование становится возможным после установки Service Pack, начиная с Service Pack 4 для Windows NT. Подробнее об использовании NTLMv2 можно прочитать в статье KB147706 How to Disable LM Authentication on Windows NT.
Восстановление паролей
Пароль может быть получен различными способами: атакой по словарю, последовательным перебором, гибридом атаки по словарю и последовательного перебора, атакой с предварительно вычисленными хэшами.
При атаке по словарю последовательно вычисляются хэши для каждого из слов словаря или модификаций слов словаря и сравниваются с хэшами паролей каждого из пользователей. При совпадении хэшей пароль найден. Преимущество метода - его высокая скорость. Недостатком есть то, что таким образом могут быть найдены только очень простые пароли, которые имеются в словаре или являются модификациями слов словаря.
Последовательный перебор комбинаций (brute force (англ.) - грубая сила (дословно), решение "в лоб") использует набор символов и вычисляет хэш для каждого возможного пароля, составленного из этих символов. При использовании этого метода пароль всегда будет определен, если составляющие его символы присутствуют в выбранном наборе. Единственный недостаток этого метода - большое количество времени, которое может потребоваться на определение пароля. Чем большее количество символов содержится в выбранном наборе, тем больше времени может пройти, пока перебор комбинаций не закончится.
При восстановлении паролей гибридом атаки по словарю и последовательного перебора к каждому слову или модификации слова словаря добавляются символы справа и/или слева. Для каждой получившейся комбинации вычисляется хэш, который сравнивается с хэшами паролей каждого из пользователей.
Для выполнения атаки с предварительно вычисленными хэшами заранее вычисляются хэши и сохраняются пары пароль/хэш для всех возможных комбинаций выбранного набора символов. Имеющиеся хэши паролей ищутся среди предварительно вычисленных хэшей. Преимуществом метода является очень высокая скорость, недостатками - длительное предварительное вычисление хэшей и большое количество дискового пространства, требуемое для их хранения.
После получения хэшей паролей можно начать восстановление паролей. Двумя основными типами файла, содержащими хэши паролей, являются PwDump- (passwords dump (англ.) - дамп паролей) и Sniff-файл.
Каждая строка PwDump-файла имеет следующий формат: "ИмяПользователя:RID:LM-хэш:NT-хэш:ПолноеИмя,Описание:ДомашнийКаталог:"
Каждая из 7-символьных половин пароля зашифрована независимо от другой в LM-хэш по алгоритму DES (бывший федеральный стандарт США), NT-хэш получается в результате шифрования всего пароля по алгоритму MD4 (фирмы RSA Security, Inc.). LM-хэш содержит информацию о пароле без учета регистра (в верхнем регистре), а NT-хэш - с учетом регистра. После имени пользователя имеется уникальный идентификатор учетной записи RID (relative identifier (англ.) - относительный идентификатор), который для получения хэшей не используется. Идентификатор встроенной учетной записи администратора равен 500, гостевой учетной записи - 501. LM-хэш присутствует для совместимости с другими операционными системами (LAN Manager, Windows for Workgroups, Windows 95/98/Me и т.д.). Его наличие упрощает восстановление паролей. Если длина NT-пароля превышает 14 символов, LM-хэш соответствует пустому паролю. При существовании LM-хэша восстановление сначала осуществляется по LM-хэшу, после нахождения LM-пароля используется NT-хэш для определения NT-пароля.
Каждая строка Sniff-файла имеет следующий формат: "ИмяПользователя:3:ЗапросСервера:LM-ответ:NT-ответ"
LM-ответ получается в результате шифрования LM-хэша, NT-ответ - в результате шифрования NT-хэша. Шифрование выполняется по алгоритму DES таким образом, что определить LM- и NT-пароль можно только при проверке всего пароля. Кроме того, в каждом случае используется свой запрос сервера. Поэтому на определение паролей по Sniff-файлу потребуется значительно больше времени.
Первой программой, выполняющей восстановление паролей Windows NT, была L0phtCrack (сегодняшнее название - LC5). Авторами L0phtCrack являются Peiter Mudge Zatko и Chris Wysopal из фирмы L0pht Heavy Industries, Inc. (сейчас @stake, Inc.). При использовании нелатинских букв в пароле с помощью программы LC5 пароль может быть не найден, для восстановления паролей рекомендуется использовать LCP.
Изменение паролей пользователей без их восстановления
Если восстановление паролей пользователей Windows NT/2000/XP/2003 не требуется, возможно их изменение при имеющемся доступе к локальному компьютеру. Изменение паролей делается с помощью программы Offline NT Password & Registry Editor (автор Petter Nordahl-Hagen). Выполняется загрузка с дискеты с операционной системой Linux, выбор пользователя для изменения пароля, вычисление хэша пароля и модификация файла SAM на диске с операционной системой. Программа поддерживает Windows NT/2000/XP/2003, в т.ч. с активизированной служебной программой SYSKEY.
Дополнительные возможности получения информации о паролях
Если в сети есть машины с установленными на них операционными системами Windows 3.11, Windows for Workgroups или Windows 95/98/Me, то имеются дополнительные возможности получения информации о паролях.
По умолчанию в этих операционных системах выполняется кэширование паролей пользователей на диск в файлы %WinDir%\<ИмяПользователя>.pwl (PassWord List (англ.) - список паролей). Пароли хранятся в зашифрованном виде, причем регистр букв игнорируется (всегда используется верхний регистр). Алгоритм шифрования паролей начиная с Windows 95 OSR2 был изменен, так как была исправлена обнаруженная ошибка, поэтому восстановить пароли из старых PWL-файлов значительно проще. Для этого могут быть применены программы Glide (автор Frank Andrew Stevenson), PWL_Key (автор Артур Иванов), PwlHack (автор Владимир Калашников), PwlTool (авторами являются Vitas Ramanchauskas, Евгений Королев). Для восстановления паролей из новых PWL-файлов можно использовать PwlHack или PwlTool.
При разрешенном кэшировании паролей с момента входа и регистрации пользователя в Windows и до момента выхода пароли можно определить, запустив программу PwlView (авторами являются Vitas Ramanchauskas, Евгений Королев). Показываются кэшируемые пароли на локальной машине для текущего пользователя, используя недокументированные функции Windows API.
Если пользователь Windows NT/2000/XP/2003 является одновременно пользователем Windows 3.11, Windows for Workgroups или Windows 95/98/Me и будет определен его пароль (как пользователя Windows 3.11, Windows for Workgroups или Windows 95/98/Me), в котором, как уже упоминалось ранее, содержатся только символы верхнего регистра, то с помощью LCP пароль Windows NT/2000/XP/2003 может быть легко определен. Необходимо в качестве известных символов пароля указать символы ранее определенного пароля пользователя Windows 3.11, Windows for Workgroups или Windows 95/98/Me.
Рекомендации администратору Windows 3.11, Windows for Workgroups и Windows 95/98/Me
На машинах с Windows 3.11, Windows for Workgroups и Windows 95/98/Me:
отключить кэширование паролей в Windows 3.11 и Windows for Workgroups. Для этого в файле %WinDir%\system.ini добавить следующий параметр: [NETWORK] PasswordCaching=no
отключить кэширование паролей в Windows 95/98/Me. Для этого с помощью редактора реестра найти в реестре двоичный параметр DisablePwdCaching и установить его в 1 (создав его, если он не существовал) в разделе HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Network
после отключения кэширования паролей удалить все PWL-файлы с диска и перезагрузить операционную систему;
если конфигурация компьютера удовлетворяет аппаратным требованиям операционных систем Windows NT/2000/XP/2003, перейти на их использование.
Рекомендации администратору Windows NT/2000/XP/2003
На машинах с Windows NT/2000/XP/2003:
сделать недоступным для вскрытия корпус компьютера для предотвращения возможного отключения жесткого диска с операционной системой или подключения другого диска;
в Setup разрешить загрузку только с жесткого диска, чтобы не допустить загрузку с другого носителя;
установить пароль на вход в Setup, не позволяя отменить запрет на загрузку с другого носителя;
Windows NT/2000/XP/2003 должна быть единственной операционной системой, установленной на машине, что делает невозможным копирование и замену файлов из других операционных систем;
использовать только файловую систему NTFS, отказаться от использования FAT и FAT32;
удостовериться в Windows NT, что установлен Service Pack 3 или более поздний и активизирована служебная программа SYSKEY;
отказаться от хранения ключа запуска в реестре, изменив в программе SYSKEY размещение ключа запуска на использование пароля запуска или хранение ключа запуска в файле на дискете;
использовать встроенную в операционные системы Windows 2000/XP/2003 возможность шифрования файлов посредством EFS (Encrypting File System (англ.) - файловая система с шифрованием), являющейся частью NTFS5;
запретить удаленное управление реестром, остановив соответствующую службу;
запретить использовать право отладки программ SeDebugPrivilege. Для этого в оснастке "Локальная политика безопасности" нужно выбрать элемент "Параметры безопасности\Локальные политики\Назначение прав пользователя" и в свойствах политики "Отладка программ" удалить из списка всех пользователей и все группы;
отменить использование особых общих папок ADMIN$, C$ и т.д., позволяющих пользователю с административными правами подключаться к ним через сеть. Для этого необходимо добавить в реестр параметр AutoShareWks (для версий Workstation и Professional) или AutoShareServer (для версии Server) типа DWORD и установить его в 0 в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Диапазон: 0-1, по умолчанию - 1. 0 - не создавать особые общие ресурсы; 1 - создавать особые общие ресурсы.
Подробнее об удалении особых общих ресурсов можно прочитать в статье KB314984 HOW TO: Create and Delete Hidden or Administrative Shares on Client Computers (для версий Workstation и Professional) и в статье KB318751 HOW TO: Remove Administrative Shares in Windows 2000 (для версии Server);
запретить или максимально ограничить количество совместно используемых сетевых ресурсов;
ограничить анонимный доступ в операционных системах Windows NT/2000, позволяющий при анонимном подключении получать информацию о пользователях, политике безопасности и общих ресурсах. В Windows NT/2000 нужно добавить в реестр параметр RestrictAnonymous типа DWORD в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
Диапазон: 0-2, по умолчанию - 0 для Windows NT/2000, 1 - для Windows XP/2003. 0 - не ограничивать, положиться на заданные по умолчанию разрешения; 1 - не разрешать получать список учетных записей и имен пользователей; 2 - не предоставлять доступ без явных анонимных разрешений (недоступно в Windows NT).
Подробнее об ограничении анонимного доступа можно прочитать в статье KB143474 Restricting Information Available to Anonymous Logon Users (для Windows NT) и в статье KB246261 How to Use the RestrictAnonymous Registry Value in Windows 2000 (для Windows 2000);
запретить хранение LM-хэшей в операционных системах Windows 2000/XP/2003 для затруднения восстановления паролей злоумышленником, вынуждая использовать для этого NT-хэши. Для этого необходимо добавить в реестр параметр NoLMHash типа DWORD и установить его в 1 в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
Диапазон: 0-1, по умолчанию - 0. 0 - хранить LM-хэши; 1 - не хранить LM-хэши.
Подробнее о запрещении хранения LM-хэшей можно прочитать в статье KB299656 How to Prevent Windows from Storing a LAN Manager Hash of Your Password in Active Directory and Local SAM Databases;
если в сети отсутствуют клиенты с Windows for Workgroups и Windows 95/98/Me, то рекомендуется отключить LM-аутентификацию, так как это существенно затруднит восстановление паролей при перехвате аутентификационных пакетов злоумышленником. Если же такие клиенты присутствуют, то можно включить использование LM-аутентификации только по запросу сервера. Это можно сделать, активизировав расширение механизма аутентификации NTLMv2. Для его активизации необходимо добавить в реестр следующие параметры:
LMCompatibilityLevel типа DWORD в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
Диапазон: 0-5, по умолчанию - 0. 0 - посылать LM- и NT-ответы, никогда не использовать аутентификацию NTLMv2; 1 - использовать аутентификацию NTLMv2, если это необходимо; 2 - посылать только NT-ответ; 3 - использовать только аутентификацию NTLMv2; 4 - контроллеру домена отказывать в LM-аутентификации; 5 - контроллеру домена отказывать в LM- и NT-аутентификации (допустима только аутентификация NTLMv2).
NtlmMinClientSec или NtlmMinServerSec типа DWORD в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
Диапазон: объединенные по логическому ИЛИ любые из следующих значений: 0x00000010 - целостность сообщений; 0x00000020 - конфиденциальность сообщений; 0x00080000 - безопасность сеанса NTLMv2; 0x20000000 - 128-битное шифрование.
Подробнее об использовании NTLMv2 можно прочитать в статье KB147706 How to Disable LM Authentication on Windows NT;
если в сети присутствуют только клиенты с Windows 2000/XP/2003, то рекомендуется использовать протокол аутентификации Kerberos;
запретить отображение имени пользователя, который последним регистрировался в операционной системе, в диалоговом окне регистрации. Для этого нужно добавить в реестр строковый параметр DontDisplayLastUserName и установить его в 1 в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Диапазон: 0-1, по умолчанию - 0. 0 - отображать имя последнего пользователя; 1 - не отображать имя последнего пользователя.
Подробнее о запрещении отображения имени пользователя можно прочитать в статье KB114463 Hiding the Last Logged On Username in the Logon Dialog;
запретить запуск экранной заставки при отсутствии регистрации пользователя операционной системы в течение некоторого времени. Для этого нужно в реестре значение строкового параметра ScreenSaveActive установить в 0 в разделе HKEY_USERS\.DEFAULT\Control Panel\Desktop
Подробнее о запрещении запуска экранной заставки можно прочитать в статье KB185348 HOW TO: Change the Logon Screen Saver in Windows;
при выборе паролей Windows NT/2000/XP/2003 соблюдать следующие правила:
не выбирать в качестве пароля или части пароля любое слово, которое может являться словом словаря или его модификацией;
длина пароля в Windows NT должна быть не менее 7 символов (при максимально возможной длине пароля в 14 символов), в Windows 2000/XP/2003 - более 14 символов (при максимально возможной длине пароля в 128 символов);
пароль должен содержать символы из возможно большого символьного набора. Нельзя ограничиваться только символами A-Z, желательнее использовать в пароле и буквы, и цифры, и специальные символы (причем в каждой из 7-символьных половин пароля, если длина пароля менее или равна 14);
символы пароля, являющиеся буквами, должны быть как верхнего, так и нижнего регистра, что затруднит восстановление пароля, производимое по NT-хэшу;
своевременно выполнять установку пакетов исправлений и обновлений операционной системы;
переименовать административную и гостевую учетные записи, отключив при этом последнюю;
избегать наличия учетной записи с именем и паролем, совпадающими с административной, на другом компьютере в качестве обычной учетной записи;
иметь только одного пользователя с административными правами;
задать политику учетных записей (блокировку учетных записей после определенного числа ошибок входа в систему, максимальный срок действия пароля, минимальную длину пароля, удовлетворение пароля требованиям сложности, требование неповторяемости паролей и т.д.);
установить аудит неудачных входов;
воспользоваться программами из пакета Microsoft Security Tool Kit, в частности HFNetChk и Microsoft Baseline Security Analyzer (написаны Shavlik Technologies LLC для Microsoft), проверяющими наличие установленных обновлений и имеющихся ошибок в настройке системы безопасности;
периодически выполнять аудит паролей, используя программу LCP или подобные ей.