Инвентаризация пользователей и групп NT/2000
Знать имена компьютеров и совместно используемых ресурсов совсем неплохо, однако настоящим праздником для хакера является получение имен пользователей. С того момента, как получено такое имя, можно считать, что 50% работы по взлому учетной записи выполнено. Некоторые специалисты считают, что на самом деле после получения имени пользователя остается затратить гораздо меньше усилий, поскольку распространенной практикой является использование простых паролей (и, вообще говоря, имен учетных записей!).
Мы снова попробуем открыть нулевой сеанс (который уже упоминался в этой главе) для получения начального доступа и попробуем воспользоваться различными приемами инвентаризации. Кроме того, вы узнаете, как извлечь информацию о пользователях с использованием службы SNMP и службы активного каталога Windows 2000.
Инвентаризация пользователей через протокол NetBIOS
К сожалению, неправильно сконфигурированные компьютеры NT/2000 предоставляют информацию о пользователях с такой же готовностью, как и о совместно используемых ресурсах. Это неоднократно демонстрировалось при рассмотрении приемов инвентаризации NetBIOS. В данном разделе вы еще раз столкнетесь с уже известными и познакомитесь с новыми средствами, которые очень хорошо подходят для получения информации о пользователях.
Ранее уже рассматривались возможности встроенной в операционную систему утилиты nbtstat и ее дополнения – свободно распространяемой программы nbtscan. Обе утилиты позволяют получить дамп удаленной таблицы имен NetBIOS, и, что очень важно, при этом не требуется открывать нулевой сеанс. Так что имена пользователей будут получены независимо от того, правильно ли установлено значение параметра RestrictAnonymous системного реестра.
Утилита еnum группы разработчиков Razor (которая уже упоминалась выше) автоматически устанавливает нулевое соединение и извлекает всю наиболее ценную информацию, о которой только может мечтать взломщик. Следующий пример, демонстрирующий всю опасность подобных действий, для краткости был отредактирован.
D:\Toolbox> enum -U -d -Р -L -с 172.16.41.10 server: 172.16.41.10 setting up session… success, password policy: rain length: none lockout threshold: none opening Isa policy… success .names: netbics: LABFARCE.COM domain: LABFARCE.COM trusted domains: SYSOPS PDC: CORP-DC netlogon done by a PDC server getting user list (pass 1, index 0)… success, got 11. Administrator (Built-in account for administering the computer/domain) attributes: chris attributes: Guest (Built-in account for guest access to the computer/domain) attributes: disabled keith attributes: Michelle attributes:
Утилита enum позволяет также определить удаленный пароль одного пользователя за один раз с использованием параметров -о -u <имя-пользователя> -f <файл-словаря>.
В комплекте NTRK имеется еще несколько инструментов, с помощью которых можно получить более подробную информацию о пользователях (через нулевой сеанс или другими способами). К таким утилитам относятся usrstat, showgrps, local и global. Однако наиболее мощным средством получения информации о пользователях является утилита DumpSec. Она позволяет получить список пользователей, групп, используемых системных политиках и правах пользователей NT. В следующем примере утилита DumpSec используется в командной строке для получения файла с информацией о пользователях удаленного компьютера (не забывайте о том, что эта утилита требует открытия нулевого сеанса).
C:\ >dumpsec /computer=\\192.168.202.33 /rpt=usersonly /saveas=tsv /outfile=c:\temp\users.txt C:\>cat c:\temp\users.txt 4/3/99 8:15 PM – Somarsoft DumpSec – \\192.168.202.33 UserName FullName Comment barzini Enrico Barzini Rival mob chieftain godfather Vito Corleone Capo godzilla Administrator Built-in account for administering the domain Guest Built-in account for guest access lucca Lucca Brazzi Hit man mike Michael Corleone Son of Godfather
При использовании графического интерфейса утилиты DumpSec можно получить отчет с гораздо большим количеством полей, однако даже формат приведенного выше примера обычно позволяет выявить нарушителя. Например, однажды мы натолкнулись на сервер, на котором пароль для переименованной учетной записи администратора хранился в поле FullName. При задании правильного значения параметра RestrictAnonymous все попытки извлечения такой информации с помощью утилиты DumpSec будут блокироваться.