Политики для управления кэшированием сетевых паролей Windows

Проблема кэширования паролей, другими словами, их сохранение на локальном диске, и связанная с ней угроза безопасности возникла в Windows for Workgroups 3.11 и продолжает существовать в 32-битных Windows. Для хранения зашифрованных локальных копий паролей для доступа в сеть и к сетевым ресурсам в Windows for Workgroups 3.11 использовались файлы с расширением "*.PWL", которые перешли в 32-битные версии Windows 95/98/ME.

Реализация Microsoft алгоритма DES, шифрующего пароль, была уже неоднократно скомпрометирована. Обсуждение этого выходит за рамки данной статьи, посвященной администрированию Windows: было опубликовано много статей и программ, взламывающих слабую криптозащиту.

Эти файлы создаются в каталоге, где была установлена Windows. Этот же каталог будет загрузочным. Скорее всего, этот каталог будет: "C:\Windows" для Windows 9.X/ME. Если этот каталог переименован, то определить его местонахождение, как и состояние всех переменных окружения, можно, набрав "set" в командной строке DOS. Переменная окружения "windir" и укажет искомый путь. Пароли кэшируются в файлы с именами USERNAME.PWL, где "USERNAME" - имя пользователя, указанное при регистрации или доступе к ресурсу.

Кроме этого, список файлов с кэшированными копиями паролей ведется в файле инициализации "System.ini", который также хранится в каталоге запуска Windows. В этом файле создается раздел "[Password Lists]", где хранятся строки вида "USERNAME=C:\WINDOWS\USERNAME.PWL", "имя пользователя=полный путь к файлу с кэшированным паролем". Когда пользователь регистрируется в системе, то Windows проверяет этот список со ссылками на файлы с паролями. Для формирования имени файла берутся первые восемь букв из имени пользователя. Если файл с таким именем существует, то он перезаписывается.

Частично проблему слабого криптоалгоритма Microsoft решила с выпуском первого сервисного пакета обновлений для Windows 95 (Service Pack 1) и обновленной версии Windows 95 OSR1 (OEM Service Release 1). Длина ключа была увеличена с 32 бит до 128.

Операционные системы Windows 9.X и ME могут быть отнесены к классу защищенности D по "оранжевой книге". В них обойти диалоговое окно ввода пароля можно простым нажатием клавиши "Esc" или кнопки "Отменить", при условии, что система не входит в домен и не затребована обязательная верификация. Пароль в Windows 9.X/ME нужен для доступа к сетевым ресурсам, но не принципиален для загрузки самой операционной системы. Другими словами, к системам, "разрешающим открытый и неограниченный доступ". Защищенность клиентских машин, работающих под управлением Windows 9.X/ME, не идет ни в какое сравнение с защищенностью серверов. Этой же "рабочей гипотезой" руководствуются взломщики, которые и атакуют их, далее получая доступ к защищенным ресурсам.

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


Запрет кэширования паролей

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

Ее состояние представляется парой булевых значений, которая хранится в параметре "DisablePwdCaching", в ключе "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Network" системного реестра. Хотя в документации MSDN для этого параметра рекомендован тип DWORD, в Windows 95/98/ME эта политика работает и с параметром "DisablePwdCaching" бинарного типа. DWORD-параметр принимает "1" и "0", бинарный - "01 00 00 00" и "00 00 00 00". Первое из пары значений отвечает за активное состояние политики. Отсутствие параметра в системном реестре приводит политику в неактивное состояние.

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

Если были созданы постоянные сетевые соединения с защищенными паролями ресурсами, то после активации политики нельзя будет эффективно пользоваться опцией Quick Logon (быстрого входа в сеть) для клиента сетей Microsoft, когда происходит не автоматическое восстановление всех сетевых соединений после входа в сеть, а подключение по мере обращения к сетевым ресурсам.

"Запрет кэширования паролей" не обнуляет список файлов в "System.ini". Файлы с расширением "*.PWL" также остаются и, при необходимости, их придется удалять вручную.

Активное состояние этой политики действует также на кэширование паролей, которые вводятся в формы в обозревателе Internet Explorer при задействованной функции Автозаполнения. Кэшированные пароли "пропадают" при перезагрузке системы независимо от состояния переключаемых окон "Запрос на сохранение пароля" и "Имен пользователей и паролей в формах", которые управляют кэшированием паролей в обозревателе. В "Свойствах обозревателя" эти окна расположены на странице "Содержание" в "Личных данных".


Запрет кэширования доменных паролей

Эта системная политика после приведения в активное состояние блокирует кэширование паролей для доступа к домену или сетевым доменным ресурсам.

За ее представление отвечает целочисленный параметр "NoDomainPwdCaching", расположенный в ключе "Network\Logon", в ветви HKEY_LOCAL_MACHINE системного реестра. Действие политики распространяется на всю систему в целом. Значение "1" приводит ее в активное состояние, "0" или отсутствие - в неактивное. "По умолчанию" политика в системе не задействована.

Valient Newman,
www.geocities.com/werebad

Версия для печатиВерсия для печати

Номер: 

01 за 2003 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!