Файл: Руссинович М., Маргозис А. Утилиты Sysinternals. Справочник администратора 2012.pdf
Добавлен: 29.10.2018
Просмотров: 33039
Скачиваний: 742

282 Часть
II
Работа с утилитами
Рис. 8-5. Команда Run As Different User в контекстном меню Проводника
Параметры командной строки для ShellRunAs описаны ниже.
ShellRunAs /reg [/quiet] ShellRunAs /regnetonly [/quiet] ShellRunAs /unreg
[/quiet]
• /reg Регистрирует программу как команду контекстного меню Про-
водника для текущего пользователя (рис. 8-5.).
• /regnetonly Регистрирует команду с параметром Netonly в контекст-
ном меню Проводника для текущего пользователя.
• /unreg Удаляет ShellRunAs из контекстного меню текущего пользователя.
• /quiet Не отображает диалоговое окно результатов регистрации или
удаления.
ShellRunAs [/netonly] программа [аргументы]
Этот синтаксис позволяет запускать программы из командной строки
ShellRunAs. С помощью параметра /netonly можно указать, что введенные
учетные данные должны использоваться только для удаленного доступа.
Autologon
С помощью программы Autologon легко настраивать встроенную функцию
автоматического входа в Windows под заданной записью пользователя во
время загрузки компьютера. Для активации автоматического входа просто
запустите Autologon, введите действительные учетные данные в и щелкните
кнопку Enable. Также можно передать имя пользователя, домен и пароль как
аргументы командной строки:
autologon Abby MYDOMAIN Pass@word1
Пароль хранится в реестре как зашифрованные данные LSA. При следую-
щем запуске системы Windows попытается использовать введенные учетные
данные для входа. Имейте в виду, что Autologon не проверяет принимаемые
учетные данные, равно как и право учетной записи на вход в систему. Также
учтите, что пользователь с правами администратора может без труда восста-
новить и дешифровать зашифрованные данные LSA, хранимые в реестре.
Для отключения автоматического входа запустите Autologon и щелкни-
те кнопку Disable или нажмите клавишу Escape. Для однократного отклю-
чения автоматического входа удерживайте клавишу Shift во время загруз-
ки, начиная с того момента, когда должен произойти автоматический вход.
Автоматический вход может быть запрещен групповой политикой. Autologon
работает в Windows XP и выше и требует привилегий администратора.
SIN_ch_08.indd 282
27.12.2011 14:31:48

Утилиты системы безопасности
Глава 8 283
LogonSessions
Программа LogonSessions выводит список активных сеансов LSA. Сеанс
создается после аутентификации учетной записи пользователя или службы
в Windows одним из следующих способов:
• путем интерактивного входа пользователя на консоли или через удален-
ный рабочий стол;
• через сетевую аутентификацию при доступе к общему файлу или сетево-
му приложению;
• с помощью SCM, используя сохраненные учетные данные службы;
• с помощью службы Secondary Logon с использованием Runas.exe;
• путем простой проверки операционной системой, как для учетной записи
System и NT AUTHORITY\ANONYMOUS LOGON. Данный способ ис-
пользуется при выполнении действий от имени пользователя, не прошед-
шего аутентификацию или маркера олицетворения уровня «identify».
Маркер доступа создается вместе с сеансом входа и обозначает контекста
защиты учетной записи. Маркер доступа копируется процессами и потока-
ми, работающими в данном контексте безопасности, и содержит ссылку на
свой сеанс входа. Сеанс остается активным, пока существует хотя бы один
экземпляр маркера, ссылающегося на этот сеанс.
Каждый сеанс входа имеет локально уникальный идентификатор (LUID).
LUID — это сгенерированная системой 64-разрядная величина, уникаль-
ность которой гарантируется в течение сеанса, в котором она сгенерирована.
Некоторые LUID являются стандартными. Например, LUID сеанса учетной
записи SYSTEM — 0x3e7 (999 в десятичной системе), LUID сеанса Network
Service — 0x3e4 (996), а LUID Local Service — 0x3e5 (997). Большинство
остальных LUID генерируется случайным образом.
Существует несколько ресурсов, принадлежащих сеансам. К ним отно-
сятся сеансы SMB и назначенные буквы сетевых дисков (например, коман-
дой NET USE), а также связи Subst.exe. Их можно увидеть в пространстве
имен Диспетчера объектов Windows с помощью программы Sysinternals
WinObj (см. главу 14) в папке \Sessions\0\DosDevices\LUID. Ресурсы, при-
надлежащие сеансу SYSTEM, находятся в глобальном пространстве имен.
Имейте в виду, что сеансы LSA не связаны с сеансами служб терминалов
(TS). Сеансы TS включают сеансы интерактивных пользователей, вошедших
через консоли или удаленный рабочий стол, а также «сеанс 0», в котором ра-
ботают все служебные процессы. Маркер доступа процесса идентифицирует
сеанс LSA, от которого он унаследован, и сеанс TS, в котором он работает.
Несмотря на то, что большинство процессов, работающих под учетной за-
писью SYSTEM (сеанс 0x3e7), связано с сеансом 0, два системных процесса
работают в каждом интерактивном сеансе TS (Winlogon.exe и Csrss.exe). Их
можно увидеть, выбрав столбец Session в Process Explorer.
LogonSessions работает в Windows XP и выше, и требует наличия при-
вилегий администратора. Запустите программу LogonSessions в командной
SIN_ch_08.indd 283
27.12.2011 14:31:49

284 Часть
II
Работа с утилитами
строке с повышенными привилегиями, и она отобразит информацию о всех
активных сеансах, включая LUID, имя пользователя и SID учетной записи,
прошедшей аутентификацию, использованный пакет аутентификации, тип
входа (Service или Interactive), ID сеанса TS, с которым связан сеанс входа,
время входа (по местному времени), имя сервера, выполнившего аутенти-
фикацию, доменное имя DNS и основное имя пользователя (UPN) учетной
записи. Если добавить в командную строку параметр /p, то LogonSessions
перечислит под каждым сеансом входа все процессы с маркером, связанным
с сеансом входа. Вот пример вывода LogonSessions:
[0] Logon session 00000000:000003e7:
User
name:
MYDOMAIN\WIN7-X64-VM$
Auth
package:
Negotiate
Logon
type:
(none)
Session:
0
Sid:
S-1-5-18
Logon
time:
6/9/2010
23:02:35
Logon
server:
DNS
Domain:
mydomain.lab
UPN:
WIN7-X64-VM$@mydomain.lab
[1] Logon session 00000000:0000af1c:
User
name:
Auth
package:
NTLM
Logon
type:
(none)
Session:
0
Sid:
(none)
Logon
time:
6/9/2010
23:02:35
Logon
server:
DNS
Domain:
UPN:
[2] Logon session 00000000:000003e4:
User
name:
MYDOMAIN\WIN7-X64-VM$
Auth
package:
Negotiate
Logon
type:
Service
Session:
0
Sid:
S-1-5-20
Logon
time:
6/9/2010
23:02:38
Logon
server:
DNS
Domain:
mydomain.lab
UPN:
WIN7-X64-VM$@mydomain.lab
[3] Logon session 00000000:000003e5:
User name: NT AUTHORITY\LOCAL SERVICE
Auth
package:
Negotiate
Logon
type:
Service
Session:
0
Sid:
S-1-5-19
Logon
time:
6/9/2010
23:02:39
SIN_ch_08.indd 284
27.12.2011 14:31:49

Утилиты системы безопасности
Глава 8 285
Logon
server:
DNS
Domain:
UPN:
[4] Logon session 00000000:00030ee4:
User name: NT AUTHORITY\ANONYMOUS LOGON
Auth
package:
NTLM
Logon
type:
Network
Session:
0
Sid:
S-1-5-7
Logon
time:
6/9/2010
23:03:32
Logon
server:
DNS
Domain:
UPN:
[5] Logon session 00000000:0006c285:
User
name:
MYDOMAIN\Abby
Auth
package:
Kerberos
Logon
type:
Interactive
Session:
1
Sid:
S-1-5-21-124525095-708259637-1543119021-20937
Logon
time:
6/9/2010
23:04:06
Logon
server:
DNS
Domain:
MYDOMAIN.LAB
UPN:
abby@mydomain.lab
[6] Logon session 00000000:000709d3:
User
name:
MYDOMAIN\Abby
Auth
package:
Kerberos
Logon
type:
Interactive
Session:
1
Sid:
S-1-5-21-124525095-708259637-1543119021-20937
Logon
time:
6/9/2010
23:04:06
Logon
server:
DNS
Domain:
MYDOMAIN.LAB
UPN:
abby@MYDOMAIN.LAB
Поскольку учетные записи System и Network Service могут проходить
аутентификацию по учетной записи компьютера, их имена выглядят так:
domain\computer$ (или workgroup\computer$, если компьютер не присо-
единен к домену). Сервер входа — имя компьютера для локальных учетных
записей, эта строка может быть пустой при входе с кешированными учетны-
ми данными.
Также имейте в виду, что в Windows Vista и выше при активном UAC в ре-
зультате интерактивного входа пользователя, являющегося членом группы
Администраторы,
1
создаются два сеанса входа, как видно из предыдуще-
1
Точнее, два сеанса создаются, когда пользователь входит в стандартную группу с широкими
возможностями или обладает привилегиями, эквивалентными администраторским, например
SeDebugPrivilege.
SIN_ch_08.indd 285
27.12.2011 14:31:49

286 Часть
II
Работа с утилитами
го примера с MYDOMAIN\Abby в элементах [5] и [6]. Один из сеансов
входа содержит маркер, означающий полные права пользователя, а дру-
гой — отфильтрованный маркер с отключенными «мощными» группа-
ми и снятыми повышенными привилегиями. Именно по этой причине
при повышении привилегий буквы дисков, назначенные в процессах без
повышенных привилегий, не действуют в процессах с повышенными
привилегиями. Эти и другие данные для всех сеансов можно увидеть в
каталоге \Sessions\0\DosDevices\LUID
с помощью программы WinObj,
описанной в главе 14 (см. также статью 937624 Knowledge Base о на-
стройке EnableLinkedConnections по адресу
http://support.microsoft.com/
kb/937624).
SDelete
Защита от повторного использования объектов является основой политики
системы безопасности Windows. Это означает, что приложения, получившиt
место диске или в виртуальной памяти, yt могут прочитать данные, кото-
рые ранее хранились в этой области памяти. Перед тем, как предоставить
приложению какой-либо ресурс, Windows выполняет очистку памяти и за-
писывает нули в сектора диска, ранее содержавшие другие данные. Тем не
менее, этот механизм не очищает место на диске при удалении файла, по-
скольку разработчики Windows полагали, что только операционная система
будет управлять доступом к системным ресурсам. Но когда операционная
система не загружена, с помощью простых редакторов диска и инструментов
для восстановления и просмотра данных можно без труда просматривать
данные, удаленные операционной системой. Даже если зашифровать фай-
лы с помощью EFS, исходные незашифрованные данные могут оставаться
на диске после создания зашифрованной версии файла. Временные файлы
также могут не шифроваться.
Единственным способом гарантировать невозможность восстановления
удаленных файлов и файлов, зашифрованных EFS, является использование
специальной программы. Такие программы перезаписывают данные удален-
ного файла на диске, используя приведенные ниже технологии, делая невоз-
можным их восстановление. Даже при использовании технологий, способ-
ных считывать с магнитных носителей данные файлов, удаленных неделю
назад, восстановить данные оказывается невозможно. Одной из таких про-
грамм является утилита SDelete (Secure Delete). Ее можно использовать
как для гарантированного удаления существующих файлов, так и стирания
любых данных в свободных областях диска (удаленных или зашифрован-
ных файлов). SDelete соответствует стандарту удаления и очистки данных
DOD 5220.22-M Министерства обороны США, так что можете быть увере-
ны: файлы, стертые с помощью SDelete, исчезнут навсегда. Имейте в виду,
что SDelete гарантированно удаляет только данные, но не имена файлов.
SIN_ch_08.indd 286
27.12.2011 14:31:49