Сеть под наблюдением
26 августа 2010
Рубрика: Интернет и сети.
Автор: Джахангир Исмаилов.

net_26_08_2010

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

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

Так, однажды мне пришлось провести инвентаризацию сети, посмотреть количество компьютеров в сети и службы, которые запущены на них. По совету бывалых умельцев я вбил в поисковике сканер сети, скачал первый попавшийся и принялся за выполнение своих служебных обязанностей. Запустил сканер и, набравшись терпения, ожидал полученные результаты. Спустя некоторое время начали появляться жалобы пользователей о том, что у них перестает работать сеть, ругается антивирус, ну и как это обычно происходит в таких случаях, антивирусное программное обеспечение пишет: «Предотвращена сетевая атака: сканирование портов».

Как же решить, казалось бы, такую тривиальную задачу? Тут я вспомнил, что как-то раз я услышал краем уха про сетевой сканер Nmap. О нем часто писали в различных IT-журналах, ссылаясь на то, что данный сканер используется хакерами для сокрытия своего присутствия во время сканирования и обнаружения уязвимостей, а также, что он используется министерством обороны США в целях противодействия хакерам. Но сейчас не об этом, я вбил в поисковик слово Nmap и первая же ссылка меня отправила на сайт http://nmap.org, который оказался официальным сайтом разработчика данной программы. Многие, наверное, догадались, что речь в данной статье пойдет о сетевом сканере Nmap, автором которой является Гордон Лион под псевдонимом Fyodor.

История
Как же все-таки появился сетевой сканер Nmap? Данный сканер будет праздновать в этом году свое 13-летие. Nmap — это сокращение слова Network mapper, то есть сетевой картостроитель, как можно его дословно перевести с английского. А началось все в 1997 году, когда разработчик Fyodor опубликовал в журнале PHRACK http://www.phrack.org свою программу NMAP и статью к ней с исходным кодом данной программы.

Так в мире появился один из первых сетевых сканеров, который впоследствии обрел все больше поклонников и последователей. Сканер Nmap не раз демонстрировался в голливудских боевиках, где необходимо было спасти мир. Впервые он промелькнул в одном из знаменитых фильмов братьев Вачовски «Матрица: Перезагрузка» (рис. 1), где Тринити необходимо было проникнуть на один из серверов электросети. А затем уже в таких блокбастерах, как «Крепкий орешек 4», «Казино «Рояль», «Ультиматум Борна».

net_26_08_2010_1

Рис.1. Кадры из кинофильма «Матрица: Перезагрузка».

Ну а на сегодняшний день данный сканер используют хакеры, специалисты в области информационной безопасности и даже специалисты из Агентства национальной безопасности США, которые активно следят за выходом последних версий сетевого сканера и не только (рис. 2).

net_26_08_2010_2

Рис.2. Посещение Д.Бушем Агентства национальной безопасности США (фото из газеты Washington Post), на заднем фоне можно увидеть, что специалисты АНБ следят за последними обновлениями инструментов безопасности, одним из которых является Nmap.

Но вернемся в реальность, сканер Nmap — это не только инструмент, который может доставить много неприятностей администраторам, но он также обладает огромным количеством опций, которые могут значительно облегчить повседневные задачи им.

Возможности
Сетевой сканер Nmap — это бесплатное программное обеспечение с открытым исходным кодом, которое свободно распространяется по лицензии GNU GPL и используется IT-специалистами по всему миру. Существуют версии под различные платформы операционных систем, начиная от UNIX, заканчивая пользовательскими операционными системами, такими как Apple и Microsoft Windows.

Nmap предназначен для сканирования сетей с любым количеством объектов, определения состояния объектов сканируемой сети, а также портов и соответствующих им служб. Он использует различные методы сканирования, такие как UDP, TCP, TCP-SYN, FTP-proxy, Reverse-ident, ICMP, FIN, ACK, XMasTree, SYN и NULL-сканирование.

Nmap поддерживает большой набор дополнительных возможностей, а именно:
• определение операционной системы удаленного хоста с использованием отпечатков стека TCP/IP;
• невидимое «stealth»-сканирование;
• динамическое вычисление времени задержки и повтор передачи пакетов;
• параллельное сканирование;
• определение неактивных хостов методом параллельного ping-опроса;
• сканирование с использованием ложных хостов;
• определение наличия системы обнаружения вторжений и сетевых экранов;
• RPC-сканирование;
• сканирование с использованием IP-фрагментации;
• произвольное указание IP-адресов и номеров портов сканируемых сетей.

Nmap превосходно работает как с большими сетями, так и с отдельными хостами, не нарушая при этом их работу и производительность сети. Это достигается возможностью гибких настроек, которые позволяют не только формировать пакеты, отправляющиеся в сеть, но и осуществлять невидимое «stealth»-сканирование, не вызывая при этом подозрения у систем безопасности. Не многие сканеры обладают такой возможностью. Это явилось одним из критериев, почему данный сканер является одним из излюбленных инструментов хакеров, которые они используют для изучения сети с целью дальнейшего проникновения в нее.

Nmap позволяет просканировать различные сетевые протоколы, такие как UDP, TCP, ICMP и вывести результаты сканирования на экран и записать их как в машинном, так и в удобочитаемом для пользователя виде.

Установка
Официальный сайт разработчика сканера — http://nmap.org. На данном сайте находится много полезной информации по настройке и установке сканера Nmap. Скачать последнюю версию данного инструмента можно по ссылке http://nmap.org/download.html. Как говорилось ранее, Nmap поддерживает различные операционные системы, поэтому необходимо скачать соответствующую версию программного обеспечения.

Рассмотрим порядок ее установки на операционную систему Microsoft Windows.
Скачиваем с официального сайта установочную программу для операционной системы Windows. На момент написания статьи последней стабильной версией была 5.21, поэтому скачиваем файл с расширением .exe Nmap-5-21-setup.exe. Запускаем установку файла двойным нажатием левой кнопкой мыши на установочный файл. После прочтения лицензионного соглашения и согласия с ним вам будет предложен выбор компонентов, которые понадобятся для установки сканера Nmap (рис. 3).

net_26_08_2010_3

Рис. 3. Выбор компонентов установки сканера Nmap.

Nmap Core Files — основные файлы и скрипты для работы сканера Nmap;

Register Nmap Path — регистрирует Nmap в переменной $PATH, что позволит запускать сканер в командной строке без указания пути к программе;

WinPcap 4.1.1 — устанавливает библиотеку WinPcap. Библиотека WinPcap необходима для осуществления гибкого сканирования сети;

Network Performance Improvements — изменяет значения в реестре Windows для увеличения производительности при сканировании;

Zenmap — устанавливает сканер Nmap с графическим интерфейсом;

Ncat — устанавливает инструмент, ранее известный как Netcat или nc, позволяющий устанавливать TCP- и UDP-соединения, принимать данные и передавать их, в народе его также называют армейским швейцарским ножом;

Ndiff — устанавливает инструмент, который позволяет сравнить результаты сканирования.

После выбора необходимых компонентов нажимаем кнопку Next, появляется окно, в котором необходимо выбрать путь для установки программы (рис. 4). В случае необходимости изменить путь установки можно прописать его вручную или выбрать нужный каталог при помощи кнопки Browse. Выбрав нужный каталог для установки, нажимаем кнопку Next, начинается процесс установки (рис. 5). В зависимости от того, какие компоненты были выбраны, процесс установки может занять от 2 до 5 минут. По окончании установки программа предложит создать ярлыки в меню пуск и на рабочем столе (рис. 6).

net_26_08_2010_4

Рис. 4. Выбор пути установки Nmap.

net_26_08_2010_5

Рис. 5. Процесс установки Nmap.

net_26_08_2010_6

Рис. 6. Завершение установки сканера Nmap.

net_26_08_2010_7

Рис. 7. Завершение установки сканера Nmap.

Описать все настройки в рамках одной статьи не имеется возможным, поэтому в данной статье будут описаны основные и полезные команды, которые познакомят пользователя с интерфейсом сканера.

Итак, первый запуск. Набрав в командной строке команду nmap и нажав Enter, сканер выдаст версию программного обеспечения, порядок использования и огромное количество опций (рис. 8). Разберем основные из них, которые могут быть полезны для администратора.

net_26_08_2010_8

Самый простой способ опросить сеть на наличие в ней компьютеров — это запустить сканер Nmap с параметрами -sP: nmap -sP 192.168.0.0/24, результат, соответственно, отобразит все активные хосты в сети, их IP- и MAC-адреса, с указанием производителя сетевых карт, установленных на удаленных хостах.

Для определения версий служб, запущенных на удаленных хостах, необходимо запустить сканер с параметрами -sV: nmap -sV 192.168.0.0/24, после окончания сканирования будет получен список открытых TCP- и UDP-портов, список служб, которые за ними закреплены, и их версии.

Для определения операционной системы удаленных хостов необходимо запустить сканер с параметром -O: nmap -O 192.168.0.0/24, по завершении выполнения команды результатом будет список хостов в сети и название операционных систем, под которыми они работают.

Параметр -A осуществит полное сканирование удаленных хостов, где будет осуществлена проверка на наличие открытых, фильтруемых и закрытых портов, запущенных служб, определения их версий, операционной системы, под управлением которой работает данный хост: nmap -A 192.168.0.0/24.

Этот способ сканирования можно назвать наиболее агрессивным в отличие от остальных. Необходимо учесть, что большинство параметров сканера Nmap заставляет установленные средства сетевой защиты адекватно реагировать при сканировании компьютеров и блокировать IP-адрес, с которого ведется сканирование. Что и произойдет в данном случае, если на удаленном компьютере установлен межсетевой экран. Но, как говорилось ранее, данный сканер позволяет гибко настроить сканирование, что позволит не потревожить работу пользователей и их компьютер.

Большинство межсетевых экранов обнаруживает сканирование портов на основе стандартных методов, и это, как правило, одновременный запрос на подключение к нескольким портам. Сканер Nmap может без труда обойти такое ограничение, так как большинство опций могут комбинироваться друг с другом. Для этого необходимо задать только определенные порты для сканирования при помощи параметра -p диапазон портов и выбрать необходимые параметры сканирования: nmap -sV -O -p 80,139,1024 192.168.0.0/24, данная команда просканирует сеть 192.168.0.0/24, определит активные хосты, операционные системы, под которыми они работают, и версии служб, запущенные на портах 80, 139, 1024. При этом будет просканировано всего 3 порта, что позволит остаться незаметным для межсетевого экрана и не нарушить работу сети.

Для того, чтобы все полученные данные сохранить в формате XML, необходимо добавить параметр -oX имя файла: nmap -V -O -p 80,139,1024 -oX lanscan.xml 192.168.0.0/24.

Параметр -oX удобен для ведения периодического мониторинга отдельных компьютеров с использованием такой утилиты, как ndiff. Допустим, вам надо периодически проверять отдельный сервер на наличие уязвимостей или несанкционированных изменений в нем, для этого необходимо периодически запускать его полное сканирование и затем при помощи утилиты ndiff просматривать появляющиеся изменения.

Пример:
1. Просканировать сервер 192.168.0.100 16 июля 2010 года и сохранить результаты сканирования в файл serverscan16.07.10.xml: nmap -A -oX serverscan16.07.10.xml 192.168.0.100;
2. Просканировать сервер 192.168.0.100 19 июля 2010 года и сохранить результаты сканирования в файл server-scan19.07.10.xml: nmap -A -oX server-scan16.07.10.xml 192.168.0.100;
3. Проверить результаты сканирований при помощи утилиты ndiff: ndiff -text serverscan16.07.10.xml serverscan16.07.10.xml.

И если за эти два дня на сервере произошли какие-либо изменения, то результатом вывода данной команды будет список изменений, которые произошли за эти 2 дня. Как видно, сканер Nmap можно использовать не только как сканер сети, но и как инструмент ведения аудита безопасности.

Как я уже говорил, в рамках одной статьи невозможно описать все возможности данного инструмента, но и этого, я думаю, достаточно для выполнения повседневных задач в сети.

Для тех, кто хочет узнать дополнительные возможности сканера, в таблице 1 описаны некоторые опции, которые также могут быть полезны для сетевых администраторов.

net_26_08_2010_9

Заключение
В заключение хотелось бы добавить, что сканер Nmap — это бесплатный полезный инструмент для сетевых администраторов, который облегчит работу системным администраторам и повысит безопасность сети. Администратору необходимо обнаруживать места, где имеется потенциальная брешь в системе, раньше, чем это сделают злоумышленники, и сетевой сканер Nmap — надежный товарищ в этом случае.

Для полного ознакомления с данным инструментом рекомендую прочитать литературу по работе со сканером Nmap. Полезные книги «Nmap in the Enterprise your guide to network scanning», издательство Syngress, и «Nmap network scanning», автором которой является разработчик программы Гордон Лион. Кстати, бесплатная, но, к сожалению, урезанная версия книги «Nmap network scanning» имеется на сайте разработчика, на которую можно перейти по ссылке http://nmap.org/book/toc.html.

Используемая литература:
1. Angela Orebaugh, Becky Pinkard, «Nmap in the Enterprise your guide to network scanning», Syngress Publishing, Inc. ISBN 13: 978-1-59749-241-6;
2. Gordon «Fyodor» Lyon, «Nmap network scanning», http://nmap.org/book/toc.html, ISBN-10: 0-9799587-1-7;
3. http://www.cherepovets-city.ru/insecure/runmap/index.html#docs.

Orphus system
Подписывайтесь на канал infoCOM.UZ в Telegram, чтобы первыми узнавать об ИКТ новостях Узбекистана
В Telegram
В WhatsApp
В Одноклассники
ВКонтакте