При использовании графического интерфейса утилиты DumpSec можно получить
отчет с гораздо большим количеством полей, однако даже формат приведенного выше
примера обычно позволяет выявить интересную информацию. Например, однажды
мы натолкнулись на сервер, на котором пароль для переименованной учетной записи
администратора хранился в поле FullName. При задании правильного значения пара-
метра
RestrictAnonymous
все попытки извлечения такой информации с помощью ути-
литы DumpSec будут блокироваться.
Идентификация
учетных
записей
с
помощью
утилит
user2sid/sid2user
Двумя другими чрезвычайно мощными средствами инвентаризации NT/2000 явля-
ются утилиты sid2user и
user2sid,
написанные Евгением Рудным
(Evgenii
Rudnyi,
http:
//www.
chem.msu.su:
8080/~rudnyi/NT/sid.
txt).
Эти
утилиты командной
стро-
ки позволяют получить идентификатор защиты (SID — Security ID) по имени пользова-
теля, и наоборот. SID — это числовое значение переменной длины, назначаемое систе-
мой NT во время установки. Хорошее описание структуры и функций SID приведено в
статье Марка
Русиновича
(Mark
Russinovich),
которую можно найти по адресу
http:
//www.win2000mag.com/Articles/Index.
cfm?ArticleID=3143.
После получе-
ния с помощью утилиты
user2sid
идентификатора SID домена взломщик может ис-
пользовать его для извлечения соответствующих имен пользователей. Например,
C:\>user2sid
\\192.168.202.33
"domain
users"
S-l-5-21-8915387-1645822062-1819828000-513
Number of
subauthorities
is 5
Domain is
WINDOWSNT
Length of SID in memory is 28 bytes
Type of SID is SidTypeGroup
Таким образом, мы получили SID компьютера, представляющий собой строку, на-
чинающуюся с
s-1
и нескольких чисел, разделенных дефисами. Последнее число по-
следовательности называется относительным идентификатором (RID — Relative ID),
значение которого для встроенных групп и пользователей Windows NT/2000, таких
как Administrator или Guest, определено по умолчанию. Например, RID пользова-
теля Administrator всегда равен 500, а пользователя Guest — 501. Вооружившись
этой информацией, хакер может с помощью утилиты sid2user и RID 500, добавлен-
ного к полученному SID, узнать имя пользователя, являющегося администратором,
даже если учетная запись Administrator была переименована.
C:\>sid2user
\\192.168.2.33
5 21 8915387 1645822062 18198280005 500
Name
is
godzilla
Domain is WINDOWSNT
Type of SID is SidTypeUser
Обратите внимание, что префикс s-1 и дефисы опущены. Еще одним интересным
фактом является то, что первой учетной записи, созданной в любой локальной систе-
ме или домене NT/2000, присваивается RID 1000, а каждому последующему объек-
ту — следующий номер (1001, 1002, 1003 и т.д.), причем при удалении объекта
его
номер уже никогда не используется при создании новых объектов. Таким образом,
узнав лишь SID, хакер может получить сведения практически обо всех пользователях
и группах системы, работающей под управлением Windows NT/2000, как в прошлом,
так и в настоящем. Самое важное, что утилиты sid2user и user2sid работают даже
в тех случаях, когда включен режим
RestrictAnonumous
(см. выше) — лишь бы только
был открыт порт
139
или 445. Есть над чем подумать, не так ли?
104 Часть I. Изучение цели