Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Nmap: продолжение аудита безопасности сети

Оригинал: Advanced Nmap: Scanning Firewalls Continued
Автор: Rajesh Deodhar
Дата публикации: 1 Марта 2011 г.
Перевод: А.Панин
Дата перевода: 1 октября 2012 г.

В предыдущей статье были подробно описаны этапы аудита безопасности реальной системы, защищенной межсетевым экраном IPCop. Исследование выявило несколько открытых портов, через которые возможна эксплуатация уязвимостей системы. На основании результатов исследования, были даны рекомендации, способные повысить безопасность этой системы. Самое время проверить, как были реализованы эти рекомендации. Конечно же, для этой цели будет использована программа Nmap.

Немного повторимся: для эффективного исследования межсетевого экрана, необходимо проверить все открытые порты, их состояние и службы, выполняющиеся на них. Лучшей стратегией является использование максимального количества типов исследования, возможных в данных условиях. После рассмотрения в совокупности их результатов, составляется список открытых портов и выполняющихся на них служб. Во время исследования при помощи Nmap, не забудьте о настройках времени ожидания для ускорения процесса. В таблице 1 приведены основные состояния портов при исследовании.

Таблица 1: Основные состояния портов

Состояние порта Тип порта Описание
Заблокирован Закрытый порт Большинство портов при использовании межсетевого экрана должны быть закрыты.
Фильтруется Фильтруемый порт Малое количество портов фильтруется, ограничивая доступ работающих на них служб несколькими IP-адресами.
Разрешен Открытый порт Очень малое количество портов должно быть открыто. В случае обнаружения, не забудьте исследовать их подробнее и закрыть ненужные порты.

Тестовая система:

  • ПК с Nmap: openSUSE Linix - 192.168.1.201 (исследование проводится с правами пользователя root)
  • Внешняя сеть (Firewall Internet (Red) port) - PPPoE, IP 117.x.x.x
  • Внутренняя сеть (Firewall Internet (Green) port) - IP 192.168.1.1

Перед началом исследования, вспомним рекомендации:

  • Веб-интерфейс межсетевого экрана, работающий по протоколу HTTPS на TCP порту 775 используется для удаленного управления. Он должен работать только во время технического обслуживания или настройки.
  • Отключить режим прозрачного прокси-сервера.
  • Ограничить доступ по протоколам HTTPS и SSH, разрешив его только для MAC-адреса компьютера системного администратора.
  • Дополнительно исследовать оставшиеся порты (1000-65535) и идентифицировать работающие на них службы.
  • Разрешить доступ к серверу синхронизации времени NTP из внутренней сети.

Теперь самое время начать интересующие нас исследования.

Ранее нам удалось обнаружить открытый порт 775 при помощи TCP-исследования при помощи соединения и TCP SYN-исследования. Повторим оба эти исследования; результаты приведены в таблице 2 (некоторые строки удалены для экономии места).

Таблица 2: Результаты TCP-исследования при помощи соединения.

Команда и результаты Описание
nmap -PN -sT -vv -n -p1-1000 -T4 -oNmapTCPConnect.txt 117.X.X.X Параметр -n позволяет не разрешать имя сервера с помощью DNS, -T4 для ускорения исследования.
Starting Nmap 5.21 ( http://nmap.org ) at 2011-01-23 15:23 IST
Initiating Connect Scan at 15:23
Scanning 117.195.44.148 [1000 ports]
Connect Scan timing: About 30.00% done; ETC: 15:25 (0:01:12 remaining)
Connect Scan timing: About 60.00% done; ETC: 15:25 (0:00:41 remaining)
Completed Connect Scan at 15:25, 101.04s elapsed (1000 total ports)
Nmap scan report for 117.X.X.X
Host is up.
All 1000 scanned ports on 117.X.X.X are filtered
Первые 1000 TCP-портов закрыты.

TCP-исследование при помощи соединения, ткаже как и TCP SYN-исследование, определяет порты в диапазоне от 1 до 1000 как фильтруемые. Доступ из внешней сети заблокирован. Давайте продолжим исследование портов в диапазоне от 1001 до 65535 (см таблицу 3). Для экономии времени, изменим время ожидания RTT.

Таблица 3: Результаты TCP SYN-исследования портов от 1001 до 65535.

Команда и результаты Описание
nmap -PN -sS -f -vv -n -p1001-65535 -T4 -max-rtt-timeout 15 -oNmapSYNScan.txt 117.X.X.X Время ожидания RTT изменено для лучшей производительности.
WARNING: You specified a round-trip time timeout (15 ms) that is EXTRAORDINARILY SMALL. Accuracy may suffer. Поскольку время ожидания RTT изменено до очень малого значения, Nmap выводит предупреждение о возможных проблемах с точностью результатов.
Nmap scan report for 117.X.X.X
Host is up
 
All 64535 scanned ports on 117.195.44.128 are filtered Все порты фильтруются, открытых нет.
Nmap done: 1 IP address (1 host up) scanned in 209.93 seconds Обратите внимание на время исследования. В предыдущем исследовании на 1000 портов ушло около 101 секунды.

Продолжим исследование определением открытых UDP-портов (см. таблицу 4).

Таблица 4: Результаты UDP-исследования.

Команда и результаты Описание
nmap -PN -sU -vv -n -p U:1-65535 -T4 -max-rtt-timeout 15 -oNmapSYNScan.txt 117.X.X.X UDP-исследование для всего диапазона портов.
Starting Nmap 5.21 (http://nmap.org) at 2011-01-23 15:47 IST
Initiating UDP Scan at 15:47
Completed UDP Scan at 15:50, 212.71s elapsed (65535 total ports)
Nmap scan report for 117.195.44.128
Host is up.
 
All 65535 scanned ports on 117.195.44.128 are open/filtered
Nmap done: 1 IP address (1 host up) scanned in 212.94 seconds
Все порты фильтруются, открытых нет.
После исследования всех 65535 TCP- и UDP-портов, открытых не обнаружено. Теперь попробуем провести исследование из внутренней сети. Применим следующую команду:
nmap -vv -sU -sT -p1-1000 -n -r -T4 -oNmapIPCopInternal.txt 192.168.1.1

Таблица 5: Результаты исследования из внутренней сети.

Команда и результаты Описание
Starting Nmap 5.21 (http://nmap.org) at 2011-01-25 21:56 IST Nmap начинает исследование, используется ряд типов исследования, указанных в командной строке
Completed ARP Ping Scan at 21:56, 0.00s elapsed (1 total hosts)
Completed UDP Scan at 21:57, 23.10s elapsed (1000 total ports)
Discovered open port 53/udp on 192.168.1.1
Initiating Connect Scan at 21:57
 
Scanning 192.168.1.1 [1000 ports]
Discovered open port 53/tcp on 192.168.1.1
Discovered open port 800/tcp on 192.168.1.1
Обнаружены только два открытых порта.
Nmap scan report for 192.168.1.1
Host is up (0.043s latency).
Not shown: 999 open/filtered ports, 998 filtered ports
	PORT   STATE  SERVICE
	53/tcp    open      domain
	800/tcp  open      mdbs_daemon
	53/udp   open      domain
Определение служб добавляет подробностей.
MAC Address: 00:21:97:88:28:21 (Elitegroup Computer System)
Nmap done: 1 IP address (1 host up) scanned in 37.78 seconds
 

Исследование продолжается дополнительной идентификацией служб:

nmap -vv -n -sV -p:800 192.168.1.1

Результат исследования:

PORT        STATE      SERVICE        VERSION
800/tcp     open       http-proxy     Squid webproxy 2.7.STABLE9

Исследование всех портов, защищенных межсетевым экраном, производится при помощи команды:

nmap -vv -sU -sT -p T:1-65535,U:1-65535 -n -r -T4 -oNmapIPCopInternalAllPorts.txt 192.168.1.1

Эта простая команда позволяет исследовать все TCP- и UDP-порты. Результаты аналогичны результатам предыдущего исследования - только два открытых порта. UDP-исследование занимает более трех минут в то время, как исследование TCP-портов занимает около 100 секунд.

Наблюдения

После исследования TCP- и UDP-портов, ясно, что открыты только два порта: 53 (DNS) и TCP-порт 800 (прокси-сервер Squid). Все остальные порты закрыты. Даже сервер синхронизации времени NTP был отключен и соответствующий порт 123 закрыт вместо того, чтобы открыть доступ к нему из внутренней сети. Обратите внимание также на то, что порт 80, используемый ранее для прозрачного прокси-сервера, сейчас закрыт.

Дополнительные рекомендации по обслуживанию

  1. Запланировать регулярные аудиты безопасности межсетевого экрана из внешней и внутренней сети для проверки в случае изменения правил.
  2. Регулярно просматривать системный журнал межсетевого экрана и прокси-сервера.
  3. Регулярно проверять наличие обновлений безопасности для IPCop.

Продолжение здесь!