Итак, вывод однозначен: одна из главных задач системного администратора Windows состоит в защите от несанкционированного доступа той информации, которая хранится в базе данных SAM. С этой целью ему, прежде всего, необходимо ограничить физический доступ к компьютерам сети и, прежде всего — к контроллерам доменов. Дополнительно, при наличии соответствующих программно-аппаратных средств, следует установить пароли BIOS на включение компьютеров и на изменение настроек BIOS. Затем, используя настройки BIOS, рекомендуется отключить загрузку компьютеров с гибких и компакт-дисков. А для обеспечения контроля доступа к файлам и папкам операционной системы Windows системный раздел жесткою диска должен иметь формат NTFS.
Каталог \winnt_root\repair нужно средствами операционной системы закрыть для доступа всех пользователей, включая администраторов, и разрешать к ней доступ только во время работы утилиты RDISK, создающей в этом каталоге архивные копии системного реестра Windows. Системные администраторы также должны внимательно следить за тем, где и как хранятся дискеты аварийного восстановления (Emergency Repair Disks) и архивные копии на лазерных дисках, если на последних присутствует дубликат системного реестра Windows.
Если компьютер с операционной системой Windows входит в домен, то по умолчанию имена и хэшированные пароли последних 10-ти пользователей, регистрировавшихся на этом компьютере, сохраняются (кэшируются) в его локальном системном реестре (в разделе SECURITY\Policy\Secrets куста HKEY LOCAL_MACHINE). Чтобы отменить кэширование паролей на компьютерах домена, нужно с помощью утилиты REGEDT32 в раздел Micro-soft\WindowsNT\CurrentVersion\Winlogon куста HKEY_LOCAL MACHINE добавить параметр CashedLogonsCount, установив его значение равным нулю, а тип — REG_SZ.
Для защиты базы данных SAM можно применить утилиту SYSKEY, входящую в состав пакета обновления Windows Service Pack 3. Эта утилита позволяет включить режим дополнительного шифрования информации о паролях, которая хранится в базе данных SAM. Уникальный 128-битовый ключ для дополнительного шифрования паролей (так называемый ключ шифрования паролей — Password Encryption Key, РЕК) автоматически сохраняется в системном реестре для дальнейшего использования.
Перед помещением в системный реестр ключ РЕК шифруется при помощи другого 128-битового ключа, который называется системным ключом (System Key), и может храниться либо в системном реестре, либо в файле с именем STARTUP.KEY в корневом каталоге на отдельной дискете. Можно не сохранять системный ключ на дискете (либо на другом съемном носителе), и тогда каждый раз при запуске операционной системы он будет вычисляться с помощью алгоритма MD5 на основе пароля, набираемого на клавиатуре в диалоговом окне утилиты SYSKEY. Последние два способа хранения системного ключа обеспечивают максимальную защиту паролей в базе данных SAM, однако приводят к невозможности автоматической перезагрузки операционной системы, поскольку для завершения процесса перезагрузки потребуется либо вставить дискету (флэш-накопитель) с системным ключом и подтвердить ее наличие в дисководе путем нажатия кнопки ОК в появившемся диалоговом окне, либо вручную ввести системный ключ с клавиатуры.
Для повышения стойкости паролей пользователей операционной системы Windows к взлому рекомендуется с помощью утилиты Диспетчер пользователей (User Manager) задать минимальную длину пользовательских паролей равной не менее 8 символов и включить режим устаревания паролей, чтобы пользователи периодически их обновляли. При этом чем выше вероятность атак на парольную защиту Windows, тем короче должен быть срок такого устаревания. А чтобы пользователи не вводили свои старые пароли повторно, необходимо включить режим хранения некоторого числа ранее использовавшихся паролей.
Утилита PASSPROP из состава Windows Resource Kit, запущенная с ключом /COMPLEX, заставляет пользователей вводить более устойчивые пароли, которые или сочетают буквы в разном регистре, или буквы с цифрами, или буквы со специальными символами. Более строгие правила фильтрации нестойких паролей можно задать после установки любого из пакетов обновления Windows, начиная с Service Pack 2. Тогда специальная библиотека PASSFJLT.DLL, находящаяся в каталоге \winnt_root\System32, будет следить за тем, чтобы каждый пользовательский пароль состоял не менее чем из 5 символов, не содержал имени пользователя, включал символы, по крайней мере, трех наборов из четырех возможных, составленных из прописных букв, строчных букв, цифр и специальных символов (знаков препинания и т. д.) соответственно.
Чтобы задать такой режим проверки паролей пользователей, необходимо в раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControISet\Control\Lsa системного реестра с помощью программы REGEDT32 добавить параметр Noti fi cation Packages типа REG_MULTI_SZ и вписать в него строку PASSFILT. Если этот параметр уже имеется, то новую строку следует дописать после уже существующей.
В заключение необходимо отметить, что хотя в умелых руках злоумышленника программы взлома паролей операционных систем представляют огромную опасность для их парольной защиты, сами парольные взломщики все же являются не менее ценным инструментом для системных администраторов, которые заинтересованы в выявлении слабых мест в парольной защите своих операционных систем. Основная проблема состоит не в том, что существуют парольные взломщики, а в том, что ими недостаточно часто пользуются системные администраторы.
В данной лабораторной работе используются программный продукт – программа SAMInside версия 2.7.0.1, которая предназначена для выполнения аудита и восстановления паролей пользователей Windows NT, Windows 2000, Windows XP, Windows 2003, Windows Vista, Windows 7. Для выполнения лабораторной работы на компьютере с ОС Windows 10 и выше, необходимо установить одну из вышеуказанных операционных систем на виртуальную машину.
Возможности программы.
Импорт информации об учетных записях пользователей:
"Import SAM and SYSTEM Registry Files" – импорт пользователей из файла SAM реестра Windows.
"Import SAM Registry and SYSKEY File" – импорт пользователей из файла реестра SAM с использованием файла с системным ключом SYSKEY.
"Import from PWDUMP File" – импорт пользователей из текстового файла в формате программы PWDUMP. В каталоге \Hashes архива с программой SAMInside вы можете найти тестовые файлы подобного формата.
"Import from *.LC File" – импорт пользователей из файлов, создаваемых программой L0phtCrack.
"Import from *.LCP File" – импорт пользователей из файлов, создаваемых программами LC+4 и LC+5.
"Import from *.LCS File" – импорт пользователей из файлов, создаваемых программами LC4 и LC5.
"Import from *.HDT File" – импорт пользователей из файлов, создаваемых программами Proactive Windows Security Explorer и Proactive Password Auditor.
"Import from *.LST File" – импорт пользователей из файла LMNT.LST, создаваемого программой Cain&Abel.
"Import LM-Hashes from *.TXT File" – импорт списка LM-хэшей из текстового файла.
"Import NT-Hashes from *.TXT File" – импорт списка NT-хэшей из текстового файла.
"Import Local Users ..." – импорт пользователей с локального компьютера (для этого программу нужно запустить под пользователем с правами Администратора). В программе используются следующие методы получения хэшей локальных пользователей:
импорт локальных пользователей, используя подключение к процессу LSASS.
импорт локальных пользователей с использованием системной утилиты Scheduler.
Также программа позволяет добавлять пользователей с известными LM/NT-хэшами через диалоговое окно (Alt+Ins).
При этом максимальное количество пользователей, с которыми работает программа – 65536.
Восстановление паролей:
атакой по словарям;
гибридом атаки по словарю и последовательного перебора;
атакой полным перебором;
атакой по маске;
Использование программы
Главное окно программы содержит меню, панель инструментов, панель состояния, список учетных записей пользователей, строку состояния.
Рис.1
При выполнении лабораторной работы в меню выбирается команда Импорт локальных пользователей с использованием системной утилиты Scheduler
Рис.2
В меню Аудит содержатся команды управления сеансом аудита и восстановления паролей. В меню Сервис – Настройки – задаются параметры атаки.
Кнопки панели инструментов дублируют наиболее часто используемые команды меню.
Для выбора данного вида атаки необходимо в меню Аудит выбрать команду Атака по словарям.
Рис.3
Для задания параметров атаки по словарям выберите в меню Сервис команду Настройки. В диалоговом окне Настройки перейдите на вкладку Атака по словарям.
Рис.4
В закладке Словари, используя кнопку Добавить, выберите файл английского словаря english.dic из папки Dictionaries в пакете SAMInside_2.7.0.1. Он содержит набор английских слов и наборы символов, наиболее часто использующиеся в качестве паролей.
Рис.5
Настройки атаки по словарям также включают и гибридную атаку, т.е. возможность добавлять к проверяемым паролям до 2 символов справа и слева, что позволяет восстанавливать такие пароли как "master12" или "#admin". Для выбора данного вида атаки необходимо в меню Аудит выбрать команду Атака по словарям. В диалоговом окне Настройки перейдите на вкладку Атака по словарям и выберите количество добавляемых символов к словарному слову.
Рис.5
Далее перейдите на вкладку Гибридная атака и задайте количество добавляемых символов соответственно слева и справа от словарного слова.
Рис.6
Для выбора данного вида атаки необходимо в меню Аудит выбрать команду Атака полным перебором.
Рис.7
Для задания параметров атаки полным перебором выберите в меню Сервис команду Настройки. В диалоговом окне Настройки перейдите на вкладку Атака полным перебором и задайте параметры атаки.
Рис.8
Данный вид атаки используется, если есть определенная информация о пароле. Например:
– Пароль начинается с комбинации символов "12345";
– Первые 4 символа пароля – цифры, остальные – латинские буквы;
– Пароль имеет длину 10 символов и в середине пароля есть сочетание букв "admin";
– И т.д.
Для выбора данного вида атаки необходимо в меню Аудит выбрать команду Атака по маске.