Смекни!
smekni.com

Сетевые сканеры и анализаторы (стр. 3 из 8)

[192.168.1.1] 135 (ntportmap) open

[192.168.1.1] 123 (ntp) open

[192.168.1.1] 53 (domain) open

[192.168.1.1] 42 (name) open

nmap

Рассмотрев простейшие средства сканирования портов, давайте перейдем к обсуждению возможностей безусловного лидера этой категории — утилиты nmap. Данная утилита, разработанная Федором (Fyodor) (http://www.insecure.org/nmap), обладает не только базовыми возможностями TCP- и UDP-сканирования, но и поддерживает все остальные упоминавшиеся выше методы. Очень редко можно найти утилиту, которая предоставляла бы столь богатый набор возможностей в одном пакете. Итак, запустим утилиту и посмотрим, какие возможности она предоставляет.

[tsunami]# nmap -h

nmap V. 2.53 Использование:

nmap [Тип(ы) сканирования] [Параметры]

<Список узлов или подсетей>

Некоторые стандартные типы сканирования

(При использовании параметров, отмеченных символом '*',

требуются привилегии root)

-sT TCP-сканирование подключением

(устанавливается по умолчанию) * -sS TCP-сканирование

с помощью сообщений SYN (среди всех методов TCP-сканирования является наилучшим)

* -sU UDP-сканирование

-sP ping-прослушивание

(выполняется поиск всех достижимых узлов)

* -sF,-sX,-sN сканирование с помощью сообщений FIN,

по методу "рождественской елки" и

нуль-сканирование,

соответственно (рекомендуется использовать только опытным пользователям)

-SR/-I сканирование с использованием демона

RPC/identd (применяется совместно с другими типами сканирования)

Некоторые стандартные параметры

(являются необязательными, могут комбинироваться друг с другом):

* -О режим изучения пакетов TCP/IP

с целью определения типа удаленной операционной системы

-р <диапазон> — диапазон портов,

которые будут сканироваться.

Пример диапазона: '1-1024,1080,6666,31337'

-F Выполняется сканирование портов,

перечисленных в файле /etc/services

-v Режим вывода подробной информации.

Рекомендуется всегда использовать этот параметр.

Для включения режима вывода очень

подробной информации используйте параметр -vv

-РО Отключение проверки активности узла с помощью утилиты ping (применяется для сканирования таких узлов, как www.microsoft.com и аналогичных)

* -Ddecoy_hostl,decoy2[,...]

Скрытое сканирование с указанием нескольких ложных адресов узлов

-Т <Paranoici I Sneaky|Polite|Normal[Aggressive IInsane>

Принятая политика ожидания отклика от удаленного узла

-n/-R Никогда не выполнять разрешение имен DNS/

Всегда выполнять [по умолчанию: имена разрешаются

при необходимости] -oN/-oM <logfile>

Вывести результаты сканирования в файл <logfile> в

удобочитаемом/машинном формате -iL <inputfile>

Взять IP-адреса или имена узлов из файла <inputfiie>.

Для использования стандартного потока ввода stdin укажите '-'

* -S <your_IP>/-e <devicename>

позволяет указать исходный IP-адрес или устройство

--переход в интерактивный режим

(затем для получения справки нужно нажать клавишу h)

[tsunami] nmap -sS 192.168.1.1

Starting nmap V. 2.53 by fyodor@insecure.org

Interesting ports on (192.168.1.11):

(The 1504 ports scanned but

not shown below are in state: closed)

Port State Protocol Service

21 open tcp ftp

25 open tcp smtp

42 open tcp nameserver

53 open tcp domain

79 open tcp finger

80 open tcp http

81 open tcp hosts2-ns

106 open tcp popSpw

110 open tcp pop-3

135 open tcp loc-srv

139 open tcp netbios-ssn

443 open tcp https

Помимо вышеуказанных, утилита nmap предоставляет и другие полезные возможности, заслуживающие детального обсуждения. Так, в приведенном выше примере мы ис-ПОЛЬЗОЕИЛИ параметры командной строки, при которых осуществлялось сканирование одного узла. Однако утилита nmap с такой же легкостью позволяет сканировать и всю сеть. Как легко заметить, nmap поддерживает описания диапазонов адресов в нотации CIDR (Classless Inter-Domain Routing — бесклассовая маршрутизация доменов Internet), описанной в RFC 1519 (среди всех методов TCP-сканирования является наилучшим)

* -sU UDP-сканирование

-sP ping-прослушивание (выполняется поиск всех достижимых узлов)

* -sF,-sX,-sN сканирование с помощью сообщений FIN,

по методу "рождественской елки" и нуль-сканирование, соответственно (рекомендуется использовать только опытным пользователям)

-SR/-I сканирование с использованием демона RPC/identd (применяется совместно с другими типами сканирования)

Некоторые стандартные параметры (являются необязательными, могут комбинироваться друг с другом):

* -О режим изучения пакетов TCP/IP

с целью определения типа удаленной операционной системы

-р <диапазон> — диапазон портов, которые будут сканироваться.

Пример диапазона: '1-1024,1080,6666,31337'

-F Выполняется сканирование портов, перечисленных в файле /etc/services

-v Режим вывода подробной информации.

Рекомендуется всегда использовать этот параметр.

Для включения режима вывода очень подробной информации используйте параметр -vv

-РО Отключение проверки активности узла с помощью утилиты ping (применяется для сканирования таких узлов, как www.microsoft.com и аналогичных)

* -Ddecoy_hostl,decoy2[,...]

Скрытое сканирование с указанием нескольких ложных адресов узлов

-Т <Paranoici I Sneaky|Polite|Normal[Aggressive IInsane>

Принятая политика ожидания отклика от удаленного узла

-n/-R Никогда не выполнять разрешение имен DNS/

Всегда выполнять [по умолчанию: имена разрешаются при необходимости] -oN/-oM <logfile>

Вывести результаты сканирования в файл <logfile> в удобочитаемом/машинном формате -iL <inputfile>

Взять IP-адреса или имена узлов из файла <inputfiie>.

Для использования стандартного потока ввода stdin укажите '-'

* -S <your_IP>/-e <devicename>

позволяет указать исходный IP-адрес или устройство --переход в интерактивный режим (затем для получения справки нужно нажать клавишу h)

[tsunami] nmap -sS 192.168.1.1

Starting nmap V. 2.53 by fyodor@insecure.org

Interesting ports on (192.168.1.11):

(The 1504 ports scanned but

not shown below are in state: closed)

Port State Protocol Service

21 open tcp ftp

25 open tcp smtp

42 open tcp nameserver

53 open tcp domain

79 open tcp finger

80 open tcp http

81 open tcp hosts2-ns

106 open tcp popSpw

110 open tcp pop-3

135 open tcp loc-srv

139 open tcp netbios-ssn

443 open tcp https

Помимо вышеуказанных, утилита nmap предоставляет и другие полезные возможности, заслуживающие детального обсуждения. Так, в приведенном выше примере мы использовали параметры командной строки, при которых осуществлялось сканирование одного узла. Однако утилита nmap с такой же легкостью позволяет сканировать и всю сеть. Как легко заметить, nmap поддерживает описания диапазонов адресов в нотации CIDR (Classless Inter-Domain Routing — бесклассовая маршрутизация доменов Internet), описанной в RFC 1519 (http://www.ietf.org/rfc/rfcl519.txt). В этом формате очень легко задавать диапазоны адресов вида 192.168.1.1-192.168.1.254. Полученную информацию можно сохранить в обычном текстовом файле с помощью параметра -о. При указании параметра -oN результаты будут сохранены в удобочитаемом формате.

[tsunar.i]# ranap -sF 192.168.1.0/24 -oN outfile

Если выводимые данные нужно сохранить в файле, в котором в качестве разделителей используются символы табуляции (например, чтобы впоследствии программно анализировать полученную информацию), используйте параметр -оМ. В любом случае при сканировании сети, скорее всего, будет получено очень много информации, поэтому имеет смысл сохранить результаты в любом из форматов. В некоторых случаях целесообразно сохранять их сразу в обоих форматах, используя как параметр -ON, так и -оM.

Предположим, что после сбора предварительных данных о сети организации мы пришли к выводу, что в качестве основного брандмауэра в ней используется простое устройство, выполняющее фильтрацию пакетов. В этом случае можно воспользоваться параметром -f утилиты nmap, чтобы включить режим фрагментации пакетов. Очевидно, что это приведет к отделению заголовков TCP-пакетов от самих пакетов, что затруднит для устройств управления доступом или систем IDS возможность выявления попытки сканирования. В большинстве случаев современные устройства фильтрации пакетов и брандмауэры прикладного уровня, прежде чем осуществлять анализ пакетов IP, помещают все фрагменты в очередь. Однако при использовании более старых моделей устройств управления доступом или устройств, в которых соответствующие функции были отключены для повышения производительности, дефрагментация не выполняется и пакеты передаются дальше во внутреннюю сеть в том виде, в котором они поступают.

Если архитектура системы безопасности исследуемой сети и ее узлов была хорошо продумана, то эта система без особого труда выявит сканирование, осуществляемое с помощью приведенных выше примеров. Для таких случаев утилита nmap предоставляет дополнительные возможности маскирования, предназначенные для заполнения системных журналов исследуемого узла избыточной информацией. Данный режим включается с помощью параметра -D. Главная идея данного подхода состоит в том, чтобы во время выполнения реального сканирования создать видимость одновременного сканирования из других указанных в командной строке адресов. Для того чтобы воспрепятствовать такому сканированию, системе безопасности исследуемого узла придется проверить все записи, чтобы выяснить, какие из полученных IP-адресов источников сканирования являются реальными, а какие — фиктивными. При использовании данного метода нужно удостовериться в том, что IP-адреса, выступающие в качестве маскировочных, принадлежат реальным узлам, которые в момент сканирования подключены к Internet. В противном случае исследуемая система будет не в состоянии обработать все сообщения SYN, в результате чего возникнет условие DoS.

[tsunami] nmap -sS 192.168.1.1 -D 10.1.1.1

www.target_web.com,ME -p25,139,443

Starting nmap V. 2.53 by fyodor@insecure.org

Interesting ports on (192.168.1.1):

Port State ' Protocol Service

25 open tcp smtp

443 open tcp https

Nmap run completed -- 1 IP address (1 host up) scanned in 1 second

В приведенном примере параметры, введенные в командной строке утилиты nmap, обеспечивают сканирование в режиме, затрудняющем обнаружение реального адреса сканирующего узла.

Еще одним полезным методом является сканирование с целью идентификации запущенных процессов (подробнее о нем говорится в RFC 1413, http://www.ieff.org/rfc/rfcl413.txt). Этот тип сканирования, называемый ident-сканированием, предназначен для определения пользователя путем установления TCP-соединения с портом 113. Очень часто в ответ приходит сообщение, содержащее идентификатор владельца процесса, связанного с данным портом. Однако этот метод годится лишь для исследования систем UNIX.