Использование доверительных отношений
Для того чтобы "получить в свое распоряжение" домен, недостаточно обладать правами администратора на одном из компьютеров сети. Фактически в больших сетях многие серверы NT являются независимыми серверами приложений (т.е. компьютерами, которые используются конечными пользователями, но работающие под управлением операционной системы Windows NT Server, а не NT Workstation), а не контроллерами доменов, на которых хранятся копии базы данных SAM домена. Однако в распоряжении взломщика имеется несколько способов получения информации от автономного сервера, на основании которой можно получить доступ ко всему домену.
Дублирование данных учетных записей администраторов домена и локальной системы
Самым простым методом проникновения является использование довольно распространенной порочной практики администрирования, заключающейся в хранении данных о пользователях домена на отдельных компьютерах, работающих под управлением NT Server или Workstation. В идеальной ситуации никто не должен обладать правом регистрации на рабочей станции NT как Local Administrator с тем же паролем, что и Domain Admin. To же самое относится и к созданию локальной учетной записи с теми же пользовательским именем и паролем, которые используются в учетной записи на уровне домена. Однако в реальности такая практика является, скорее, правилом, а не исключением. Подобный один-единственный изъян в системе защиты может привести к созданию "лазеек" для проникновения в домен NT, с чем нам не раз приходилось сталкиваться при тестировании различных сетей.
Контрмеры против дублирования данных учетных записей
Самой лучшей защитой от таких "подводных камней" является использование сложных паролей для всех учетных записей группы администраторов домена и их последующее регулярное изменение (не реже, чем один раз в месяц). Кроме того, пользовательские учетные записи не должны использоваться для выполнения административных функций. Если в этом есть необходимость, создайте для таких пользователей специальные учетные записи и установите режим их аудита. Например, вместо того чтобы вносить учетную запись jsmith в группу Domain Admins, создайте учетную запись jsmitha с соответствующим уровнем привилегий. (Обратите внимание, что не стоит создавать учетные записи вида isadmin, поскольку они сразу же привлекут внимание взломщика.)
Встроенная команда runae Windows 2000 предоставляет более простой способ запуска приложений с необходимыми привилегиями. Например, следующая команда runas запускает сеанс командной оболочки, работающий в контексте учетной записи Administrator домена DOMAIN2. runas /user:domain2\administrator cmd.exeАтака на секреты LSA
Эта атака может послужить одним из самых ярких примеров той опасности, к которой может привести хранение регистрационных данных в незашифрованном виде. Такая информация вместе с некоторыми другими важными данными хранится системой NT во многих местах. Процесс получения конфиденциальной информации носит название атаки на секреты подсистемы защиты LSA (Local Security Authority). Эту информация определяется параметром системного реестра HKEY_LOCAL_MACHINE\-SECURITY\Policy\Secrets. К секретам LSA относятся следующие данные.
Например, представим автономный сервер, на котором запущены службы SMS (Systems Management Server) или SQL, работающие в контексте пользователя домена. Если локальный администратор такого сервера использует пустой пароль, то с помощью данных LSA взломщик может получить сведения об учетной записи пользователя домена. Этот изъян может привести к утечке информации на уровне многорангового домена (multimaster domain). Если на сервере ресурсов домена запущена служба, работающая в контексте учетной записи пользователя главного домена, то утечка информации на уровне сервера ресурсов может обеспечить злоумышленнику доступ к главному домену. Можно привести и более опасный пример, который довольно типичен для корпоративных пользователей портативных компьютеров. Допустим, сотрудник компании захватил с собой в поездку такой компьютер, чтобы с помощью службы удаленного доступа подключаться к корпоративной сети или к провайдеру Internet. Поскольку он не новичок в вопросах безопасности, он не устанавливает флажок, включающий режим сохранения паролей учетных записей удаленного доступа. Но, к сожалению, система NT все равно глубоко в недрах системного реестра сохраняет пользовательское имя, номер телефона и пароль. Исходный код, позволяющий получить секреты LSA, в 1997 году был опубликован в бюллетене NTBugtraq (http://www.ntbugtraq.com) Полом Эштоном (Paul Ashton). Однако сгенерированный исполняемый код не получил широкого распространения. Обновленную версию этого кода, называемую Isadump2, можно найти по адресу http://razor.bindview.com/tools/desc/lsadump2_readme.html. Утилита Isadump2 использует тот же прием, что и утилита pwdump2. Это позволяет обойти средства защиты компании Microsoft (см. ниже), которые ранее не позволяли успешно применять предыдущую версию этого средства, Isadump. Утилита Isadump2 выполняет автоматический поиск идентификатора PID процесса LSASS, внедряет себя в его поток управления и извлекает секреты LSA, как показано в следующем примере.
D:\Toolbox>lsadump2 $MACHINE.ACC В программе Internet Scanner 5.6 от компании Internet Security Systems (ISS) встроена возможность инвентаризации секретов LSA, которая входит как составная часть в технологию SmartScan. Если этот сканер сможет получить доступ к узлу NT на уровне администратора, он попытается инвентаризовать все возможные пароли, которые когда-либо использовались на данном узле. Все найденные пары "имя учетной записи/пароль" сохраняются в файле KnownUsers. В тех случаях, когда сканер обнаруживает (через нулевое соединение) в сети другой узел, на котором имеется учетная запись с таким же именем, он пытается подключиться к нему, указав только что найденный пароль. Не нужно обладать большим воображением, чтобы понять, насколько быстро можно собрать важнейшую информацию о всех или почти всех учетных записях большой сети. Контрмеры: защита секретовLSA
К сожалению, компания Microsoft не сказала ничего оригинального, заявляя, что к подобной информации администратор имеет доступ в соответствии с принятой архитектурой. В статье базы знаний KB Q184017 описывается модуль обновления, предназначенный для исправления изъянов исходной версии подсистемы LSA. После его установки с помощью шифрования SYSKEY кодируются хранящиеся на компьютере пароли учетных записей служб, кэшируемые данные для регистрации в домене, а также пароли рабочей станции.
Параметры реестра, предназначенные для автоматической регистрации
Систему NT можно настроить таким образом, чтобы при загрузке выполнялась автоматическая регистрация в системе. Для этого используется параметр системного реестра
HKLM\SOFWTARE\Microsoft\Windows NT\CurrentVersion\Winlogon\AutoAdminLogon. Автоматическая регистрация может оказаться полезной в тех редких случаях, когда неже-
Контрмеры против автоматической регистрации
Для того чтобы запретить автоматическую регистрацию, удалите значение параметра DefaultPassword. Кроме того, нужно удалить значение параметра AutoAdmin Logon или установить его равным 0.
Регистраторы нажатия клавиш
Если все остальные попытки взломщика, имеющего статус администратора локальной системы, получить аналогичные привилегии в домене не увенчались успехом, он может попытаться пойти самым простым путем: установить регистратор нажатия клавиш (keystroke logger). Так называются программы, которые скрытно от пользователя перехватывают все нажатия клавиш и, прежде чем передать их операционной системе, записывают в скрытый файл на диске. Рано или поздно какой-нибудь пользователь, зарегистрировавшись в системе, оставит соответствующий "отпечаток" своего имени и пароля в файле программы-регистратора.
За несколько недель работы утилита IKS, как правило, перехватывает хотя бы одну пару "имя пользователя/пароль" уровня домена, которые обычно находятся после записи, сгенерированной при нажатии <Ctrl+Alt+Del>.
Контрмеры: защита от программ-регистраторов
Обнаружить программы-регистраторы не так-то просто. Это объясняется тем, что они внедряются в систему на низком уровне. Что касается IKS, мы рекомендуем поискать в системном реестре параметр LogName, который должен находиться где-то в группе параметров HKLM\SYSTEM\CurrentControlSet\Services. Значением этого параметра является путь к журналу регистрации нажимаемых клавиш. Параметр, в котором находится данное значение, можно безболезненно удалить (естественно, соблюдая обычные предосторожности, связанные с редактированием системного реестра). Для обнаружения же самого драйвера IKS требуется обладать в какой-то степени навыками сыщика, чтобы распознать его среди прочих файлов . sys, хранящихся в каталоге %systemroot%\system32\drivers. Самым простым методом является проверка свойств каждого файла. Во вкладке Version диалогового окна свойств IKS будет указано IKS NT4 Device Driver, а в качестве внутреннего имени — iksnt. sys.
|