Инвентаризация сетевых ресурсов NT/2000
Первое, что может попробовать осуществить удаленный взломщик после скрупулезного изучения сети, — это получить представление об имеющихся в ней ресурсах. Сначала мы рассмотрим инвентаризацию ресурсов NetBIOS, а затем перейдем к инвентаризации служб TCP/IP, которые в большинстве случаев функционируют в системах
NT/2000.
Инвентаризация NetBIOS
Средства и приемы, которые можно применять к изучению ресурсов сети с протоколом NetBIOS, можно найти без труда — большинство из них встроено в саму операционную систему! Именно с них мы и начнем. Затем вы познакомитесь с некоторыми утилитами сторонних производителей. Возможные контрмеры лучше рассматривать в самом конце обсуждения, поскольку одновременно решить все проблемы гораздо проще.
Инвентаризация доменов NT/2000 с помощью команды net view
В качестве одного из самых ярких примеров встроенных инструментов можно привести команду net view. Это чрезвычайно простая утилита командной строки систем NT/2000, которая позволяет просмотреть все домены сети, а также практически все компьютеры доменов. Вот как выполнить инвентаризацию доменов в сети с использованием команды net view:
C:\>net view /domain
C:\>net view /domain:corleone He забывайте о том, что можно использовать информацию, полученную с помощью ping-прослушивания (глава 2), и подставить IP-адреса вместо имен NetBIOS отдельных компьютеров. Обычно IP-адреса и имена NetBIOS взаимозаменяемы (например, \\192.168.202.5 эквивалентно \\SERVER_NAME). Для удобства взломщики зачастую добавляют соответствующие записи с ключевым словом #PRE В свой файл %systemroot%\system32\drivers\etc\LMHOSTS, а затем запускают в командной строке команду nbtstat -R, чтобы перезагрузить буфер таблицы имен. С этого момента при атаке можно без проблем использовать имя NetBIOS, которое автоматически будет преобразовываться в соответствующий IP-адрес, заданный в файле LMHOSTS. Получение дампа таблицы имен NetBIOS с помощью команд nbtstat и nbtscan
Другой мощной встроенной утилитой является nbtstat, которая позволяет получить таблицу имен NetBIOS удаленной системы. Как видно из следующего примера, в этой таблице содержится важная информация.
C:\>nbtstat -A 192.168.202.33 Таблица 3. 1. Стандартные коды служб NetBIOS
Двумя основными недостатками команды nbtstat являются возможность ее применения к одному узлу одновременно и несколько непонятные выходные данные. Обоих этих недостатков лишена свободно распространяемая утилита nbtscan Аллы Безручко (Alia Bezroutchko), которую можно найти по адресу
http://www.abb.aha. ru/software/nbtscan.html. Эта утилита позволяет быстро выполнить те же действия, что и команда nbtstat, над всей сетью и при этом предоставляет прекрасно отформатированные результаты.
D:\Toolbox\nbtscanl02> Инвентаризация контроллеров доменов
Для того чтобы проникнуть в структуру сети Windows NT немного глубже, понадобится инструмент, входящий в комплект NTRK. В следующем примере мы увидим, как с помощью средства NTRK nltest можно узнать, какие контроллеры доменов являются первичными (РОС — Primary Domain Controller), а какие — вторичными (ВDC — Backup Domain Controller).
C:\> nltest /dclist:corleone Инвентаризация совместно используемых ресурсов NetBIOS с помощью команды net view и утилит NTRK
Установив нулевой сеанс, можно снова взяться за старую добрую команду net view и провести инвентаризацию ресурсов удаленной системы, предоставленных для совместного доступа:
C:\>net view \\vito Инвентаризация совместно используемых ресурсов NetBIOS с помощью утилиты DumpSec (ранее DumpACL) Одним из лучших инструментов для инвентаризации совместно используемых ресурсов NT (причем этим возможности .не ограничиваются), является пакет DumpSec (ранее DumpACL), основное диалоговое окно которого показано на рис. 3.1. Он распространяется бесплатно компанией Somarsoft (http://www.somarsoft.com). Вряд ли можно найти другой инструмент, который заслуживал бы такого же внимания администратора NT. Программа DumpSec выполняет чрезвычайно широкий аудит, начиная от разрешений на использование файловой системы удаленного узла и заканчивая перечнем запущенных на ней служб. На рис. 3.1 показан пример работы программы DumpSec для получения информации о совместно используемых ресурсах удаленной системы. Основная информация о пользователях может быть получена даже через нулевое соединение. Кроме того, эту программу можно запускать из командной строки, что позволяет без особых проблем применять ее при автоматизации процесса сбора и обработки информации, а также при написании сценариев.
Поиск совместно используемых ресурсов с помощью утилит Legion и NAT Открытие нулевого сеанса и использование описанных выше инструментов в ручном режиме прекрасно подходят для прямого вторжения, однако большинство хакеров предпочитают использовать сканер NetBIOS, чтобы быстро проверить целую сеть на предмет наличия незащищенных ресурсов. Одной из наиболее популярных утилит является Legion (ее можно найти во многих архивах Internet), диалоговое окно которой показано на следующем рисунке. Утилита Legion может обследовать сеть класса С и представить в своем окне перечень всех обнаруженных совместно используемых ресурсов. Ее версия 2.1 поддерживает режим подбора пароля "в лоб", при использовании которого утилита пытается подключиться к определенному ресурсу с помощью предоставленного пользователем списка паролей. Более подробная информация о подборе паролей Windows 9x и Windows NT приведена в главах 4 и 5 соответственно.
Еще одним популярным сканером совместно используемых ресурсов
Windows является утилита NetBIOS Auditing Tool (NAT), работа которой основывается на коде, написанном Эндрю Тридгеллем (Andrew Tridgell). Эту утилиту можно найти на Web-узле книги по адресу
http://www.hacking exposed.com. Участники ныне уже не существующей группы Rhino9 Security Team Неон Сурж (Neon Surge) и Хамелеон (Chameleon) написали графический интерфейс для утилиты NAT (рис. 3.2). Утилита NAT не только находит совместно используемые ресурсы, но и пытается подключится к ним с помощью списков пользовательских имен и паролей.
Другие средства инвентаризации сети NT/2000
Необходимо упомянуть еще несколько программ, предназначенных для инвентаризации ресурсов NT: epdump компании Microsoft (ее можно найти по адресу
http: //www.ntshop.net/security/tools/def.htm), getmac и netdom (из комплекта NTRK), а также утилиту netviewx Джеспера Лорицена (Jesper Lauritsen)
http://www.ibt.ku.dk/jesper/NTtools). Утилита epdump посредством обращения :< интерфейсу RPC отображает перечень служб, связанных с IP-адресами и номерами портов (при этом результаты отображаются далеко не лучшим образом). Утилита getmac, используя нулевой сеанс, отображает МАС-адреса и имена устройств, присвоенных сетевым адаптерам удаленных узлов. Эта информация имеет особый интерес только для хакера, который ищет систему с несколькими сетевыми адаптерами. Утилита netdom более полезна, поскольку она выдает информацию обо всех связанных доменах, включая сведения о принадлежности к домену и его резервных контроллерах. Утилита netviewx также является мощным инструментом, позволяющим получить информацию об узлах домена и запущенных на них службах. Мы часто используем netviewx для проверки наличия службы удаленного доступа NT (RAS— Remote Access Service), чтобы получить представление о количестве серверов в сети, обеспечивающих удаленный доступ. Для этого можно воспользоваться представленной ниже командой. С помощью параметра
-T задается имя исследуемого домена, а параметр -т позволяет задать тип компьютера или службы.
C:\>netviewx -D CORLEONE -Т dialin_server Утилита Winfo Арни Видстрома (Arne Vidstrom), которую можно найти по адресу http://www.ntsecurity.nu, позволяет извлечь с удаленного компьютера информацию об учетных записях пользователей, совместно используемых ресурсах, а также данные об установленных доверительных отношениях. Эта утилита позволяет даже автоматически открыть нулевой сеанс, если при ее запуске указан параметр -n. Программа nbtdump Дэвида Литчфилда (David Litchfield) (http://www.cerberus-infosec.uk/toolsn.shtml) позволяет использовать нулевые сеансы, выполнять поиск данных о совместно используемых ресурсах и пользовательских учетных записях, а, кроме того, полученные результаты представляет в прекрасном отчете HTML. Универсальное средство инвентаризации: утилита еnum
Эта утилита была разработана группой Razor компании Bindview. В ней реализованы возможности всех других средств инвентаризации NetBIOS. Разработчики назвали эту программу enum, и это очень подходит для данной главы. Утилиту
enum можно найти по адресу http://razor.bind-view.com. В приведенном ниже листинге представлены возможные Параметры командной строки. Из листинга видно, насколько всесторонние возможности предоставляет эта утилита.
D:\Toolbox>enum Инвентаризация NetBIOS: контрмеры
Практически во всех рассмотренных выше приемах задействуется механизм передачи данных NetBIOS, так что при запрещении доступа к портам TCP и UDP с 135 до 139 все попытки получения информации окажутся неудачными. Для этого лучше всего заблокировать доступ к этим портам с использованием маршрутизатора, брандмауэра или любого другого устройства управления доступом. В разделе, посвященном нулевым сеансам, вы узнали, как запретить использование протокола NetBIOS поверх TCP/IP и нужным образом настроить параметр системного реестра RestrictAnonymous. Это позволит предотвратить опасность извлечения важных данных посредством установки анонимных соединений. Однако правильное конфигурирование параметра RestrictAnonymous не способно заблокировать запросы, сгенерированные с использованием команд net view и nbtstat. Кроме того, не забывайте о том, что в системе Win 2000 некоторую информацию можно получить и через порт TCP/UDP с номером 445, так что доступ к этом порту также целесообразно заблокировать.
Инвентаризация SNMP NT/2000
Даже если вы сделали все, чтобы предотвратить доступ к службам NetBIOS, с компьютера NT/2000 по-прежнему можно получить аналогичную информацию, если на нем запушен агент SNMP (Simple Network Management Protocol). Доступ к этому агенту можно получить с помощью строки доступа public, используемой по умолчанию. В таких случаях инвентаризация пользователей NT через протокол SNMP с помощью программы sranputil из комплекта NTRK превращается в увеселительную прогулку как в прямом (от английского слова walk ("пройтись"), фигурирующего в качестве параметра), так и в переносном смысле.
С:\>snmputil walk 192.168.202.33
Конечно, можно избавиться от рутинной работы по вводу столь длинных параметров. Для этого достаточно найти в Internet (например, по адресу http: //www.solar winds.net) прекрасный SNMP-броузер с именем IP Network Browser, предоставляющий всю перечисленную выше информацию в наглядной форме. На рис. 3.3 показано, как программа IP Network Browser проверяет сеть на наличие в ней компьютеров, на которых используется протокол SNMP.
Контрмеры: защита протокола SNMP
Самый простой способ предупреждения такой деятельности состоит в удалении агента SNMP или в отключении службы SNMP с помощью аплета Services панели управления. Если данный вариант вам не подходит, то как минимум убедитесь в том, что доступ к данной службе правильно настроен и используется строка доступа private, а не установленная по умолчанию строка public. Можно также отредактировать системный реестр, чтобы разрешить только санкционированный доступ к службе SNMP и запретить передачу информации NetBIOS о системе. Для этого запустите программу regedt32 и найдите параметр
HKLM\ SystemNCurrentControlSet\Services\ SNMP\Paramaters\ValidConununities. Выберите команду
Permissions>Security и установите в открывшемся диалоговом окне значение таким образом, чтобы разрешить доступ только аутентифицированным пользователям системы. Затем перейдите к разделу
HKLM\System\CurrentControlSet\ Services\SNMP\ ParametersNExtensionAgents, удалите значение, содержащее строку LANManagerMIB2Agent, а затем переименуйте остальные параметры, чтобы восстановить правильную последовательность. Например, если вы удалили параметр с номером 1, переименуйте параметры 2, 3, 4 и т.д. в 1, 2, 3 и т.д.
Перенос зоны DNS Win 2000
Как было показано в главе 1, одной из основных целей предварительного сбора информации является получение данных о системе доменных имен (DNS), используемой в Internet, и преобразование IP-адресов узлов в дружественные имена, такие как
amazon.com. Поскольку пространство имен активного каталога основывается на использовании службы DNS, компания Microsoft полностью обновила реализацию сервера DNS в Win 2000, чтобы удовлетворить всем новым потребностям.
D:\Toolbox>nslookup Service.Proto.Name TTL Class SRV Priority Weight Port Target Из этой информации взломщик может получить некоторые сведения, а именно местоположение доменной службы глобального каталога (Global Catalog) (_gc._tcp), контроллеров домена, на которых используется аутентификация по протоколу Kerberos (_kerberos._tcp), серверов LDAP (_ldap._tcp), а также связанные с ними номера портов (в данном случае представлены лишь порты TCP). Блокирование переноса зоны DNS Win 2000 К счастью, в системе Win 2000 служба DNS реализована таким образом, что можно без проблем ограничить перенос зоны, как показано ниже на рисунке. На нем представлено диалоговое окно свойств зоны поиска в прямом направлении (в данном случае для сервера labf arce. org). Для того чтобы открыть это окно, запустите консоль управления Computer Management и откройте элемент Server Applications and Services\DNS\<имя_cepверa>\Forward Lookup Zones\[имя_зоны], а затем выберите команду Properties.
Нетрудно догадаться, что по умолчанию в системе Windows 2000 разрешен перенос зоны по любому запросу. Можно полностью запретить перенос зоны, просто сбросив флажок Allow zone transfers, однако более реалистично было бы предположить, что на резервных серверах DNS информация должна регулярно обновляться. Так что в диалоговом окне свойств зоны можно установить и менее ограничивающий режим.
|