Выполнение сканирования окна в Nmap

NmapNmapBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом лабе вы научитесь выполнять сканирование окон в Nmap, что является ценным навыком в области безопасности сети. Лабaratorная работа начинается с выполнения базового сканирования окон на целевой IP - адрес, а затем переходит к сканированию определенного диапазона портов. Также вы добавите подробность к сканированию, сохраните результаты в файл, проанализируете сканирование в терминале Xfce и сравните его с ACK - сканированием. Это практическое занятие повысит ваше понимание возможностей сканирования окон в Nmap.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) nmap/NmapGroup -.-> nmap/output_formats("Output Formats") nmap/NmapGroup -.-> nmap/save_output("Save Output to File") nmap/NmapGroup -.-> nmap/port_scanning("Port Scanning Methods") nmap/NmapGroup -.-> nmap/scan_types("Scan Types and Techniques") nmap/NmapGroup -.-> nmap/target_specification("Target Specification") nmap/NmapGroup -.-> nmap/verbosity("Verbosity Levels") nmap/NmapGroup -.-> nmap/service_detection("Service Detection") subgraph Lab Skills nmap/output_formats -.-> lab-547107{{"Выполнение сканирования окна в Nmap"}} nmap/save_output -.-> lab-547107{{"Выполнение сканирования окна в Nmap"}} nmap/port_scanning -.-> lab-547107{{"Выполнение сканирования окна в Nmap"}} nmap/scan_types -.-> lab-547107{{"Выполнение сканирования окна в Nmap"}} nmap/target_specification -.-> lab-547107{{"Выполнение сканирования окна в Nmap"}} nmap/verbosity -.-> lab-547107{{"Выполнение сканирования окна в Nmap"}} nmap/service_detection -.-> lab-547107{{"Выполнение сканирования окна в Nmap"}} end

Запуск сканирования окон с помощью nmap -sW 192.168.1.1

В этом шаге мы выполним сканирование окон с использованием Nmap. Сканирование окон - это тип TCP - сканирования, который иногда может раскрыть больше информации о открытых и отфильтрованных портах, чем другие типы сканирования. Особенно полезно, когда есть фаерволы, которые могут блокировать другие типы сканирования.

Прежде чем мы начнем, давайте кратко обсудим, что делает сканирование окон. Сканирование окон использует особенность некоторых реализаций TCP. Он отправляет TCP - пакет с установленным флагом SYN на целевой хост. Если порт открыт, цель отвечает SYN/ACK - пакетом. Затем Nmap examines the TCP window size of the response. Based on this window size, Nmap can determine if the port is open or filtered.

Теперь давайте выполним сканирование окон. Мы будем использовать следующую команду:

nmap -sW 192.168.1.1

Замените 192.168.1.1 фактическим IP - адресом целевого объекта, который вы хотите сканировать. Если вы не знаете, какой IP - адрес использовать, вы можете использовать адрес петли 127.0.0.1, который ссылается на вашу собственную машину.

Откройте терминал Xfce. Вы можете найти значок терминала на рабочем столе или в меню приложений.

В терминале введите следующую команду и нажмите Enter:

nmap -sW 127.0.0.1

Эта команда сообщает Nmap выполнить сканирование окон (-sW) на адресе петли (127.0.0.1).

Вы должны увидеть вывод, похожий на следующий:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000072s latency).
Other addresses for localhost (alias(es)): localhost

PORT     STATE  SERVICE
135/tcp  closed msrpc
139/tcp  closed netbios-ssn
445/tcp  closed microsoft-ds

Nmap done: 1 IP address (1 host up) scanned in 2.50 seconds

Вывод показывает открытые, закрытые или отфильтрованные порты на целевой машине. В этом примере порты 135, 139 и 445 закрыты. Конкретные порты и их состояния будут различаться в зависимости от целевой системы.

Сканирование диапазона портов с помощью nmap -sW -p 1-100 127.0.0.1

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

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

Теперь давайте выполним сканирование окон с диапазоном портов. Мы будем использовать следующую команду:

nmap -sW -p 1-100 127.0.0.1

Эта команда сообщает Nmap выполнить сканирование окон (-sW) на портах от 1 до 100 (-p 1-100) адреса петли (127.0.0.1).

Откройте терминал Xfce.

В терминале введите следующую команду и нажмите Enter:

nmap -sW -p 1-100 127.0.0.1

Вы должны увидеть вывод, похожий на следующий:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http

Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Вывод показывает открытые, закрытые или отфильтрованные порты в указанном диапазоне (1-100) на целевой машине. В этом примере порты 22, 25 и 80 закрыты. Конкретные порты и их состояния будут различаться в зависимости от целевой системы.

Добавление подробности при сканировании с помощью nmap -v -sW 192.168.1.1

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

Параметр подробности Nmap (-v) увеличивает количество отображаемой информации в ходе сканирования. Это может включать детали о фазах сканирования, пакетах, которые отправляются и принимаются, а также причины, по которым Nmap принимает определенные решения. Использование подробности может быть особенно полезно, когда вы пытаетесь диагностировать проблемы в сети или когда хотите понять, как Nmap интерпретирует ответы от цели.

Теперь давайте выполним сканирование окон с подробностью. Мы будем использовать следующую команду:

nmap -v -sW 192.168.1.1

Замените 192.168.1.1 фактическим IP - адресом целевого объекта, который вы хотите сканировать. Если вы не знаете, какой IP - адрес использовать, вы можете использовать адрес петли 127.0.0.1, который ссылается на вашу собственную машину.

Откройте терминал Xfce.

В терминале введите следующую команду и нажмите Enter:

nmap -v -sW 127.0.0.1

Эта команда сообщает Nmap выполнить сканирование окон (-sW) на адресе петли (127.0.0.1) и увеличить уровень подробности (-v).

Вы должны увидеть вывод, похожий на следующий (точный вывод может различаться):

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:10 UTC
NSE: Loaded 0 scripts for scanning.
Initiating Window Scan at 10:10
Scanning localhost (127.0.0.1) [1000 ports]
Discovered open port 22/tcp on 127.0.0.1
Discovered open port 80/tcp on 127.0.0.1
Completed Window Scan at 10:10, 0.12s elapsed (1000 total ports)
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000039s latency).
Other addresses for localhost (alias(es)): localhost

PORT   STATE  SERVICE
22/tcp open   ssh
80/tcp open   http

Read data files from: /usr/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 0.19 seconds

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

Сохранение сканирования окон с помощью nmap -sW -oN window.txt 127.0.0.1

В этом шаге мы сохраним результаты сканирования окон в файл. Это полезно для последующего анализа или для обмена результатами с другими.

Nmap предоставляет несколько вариантов сохранения результатов сканирования в различных форматах. Параметр -oN сохраняет результаты в "обычном" человекочитаемом формате. Этот формат легко читать и понимать, но он, возможно, не подходит для автоматического разбора. Другие параметры включают -oX для формата XML и -oS для формата, подходящего для "скриптовых ребят".

Теперь давайте выполним сканирование окон и сохраним результаты в файл с именем window.txt в директории ~/project. Мы будем использовать следующую команду:

nmap -sW -oN window.txt 127.0.0.1

Эта команда сообщает Nmap выполнить сканирование окон (-sW) на адресе петли (127.0.0.1) и сохранить результаты в нормальном формате (-oN) в файл window.txt.

Откройте терминал Xfce.

В терминале введите следующую команду и нажмите Enter:

nmap -sW -oN window.txt 127.0.0.1

Вы должны увидеть вывод, похожий на следующий:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:15 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http

Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Результаты сканирования теперь сохранены в файле window.txt в директории ~/project.

Для проверки того, что файл был создан и содержит результаты сканирования, вы можете использовать команду cat для отображения содержимого файла:

cat window.txt

В выводе вы должны увидеть отчет Nmap.

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http
## Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Анализ сканирования окон в терминале Xfce

В этом шаге мы будем анализировать результаты сканирования окон, которые мы сохранили в файл window.txt на предыдущем шаге. Понимание вывода сканирования Nmap является至关重要ым для идентификации потенциальных уязвимостей и безопасности рисков.

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

Откройте терминал Xfce.

Во - первых, давайте выведем содержимое файла window.txt с помощью команды cat:

cat window.txt

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

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http
## Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Разберём основные части этого вывода:

  • Nmap scan report for localhost (127.0.0.1): Эта строка указывает, что сканирование было выполнено на адресе петли 127.0.0.1.
  • Host is up: Эта строка подтверждает, что целевой хост доступен.
  • PORT STATE SERVICE: Эта секция перечисляет порты, которые были отсканированы, и их соответствующие состояния и службы.
  • 22/tcp closed ssh: Эта строка указывает, что порт 22 (SSH) закрыт.
  • 25/tcp closed smtp: Эта строка указывает, что порт 25 (SMTP) закрыт.
  • 80/tcp closed http: Эта строка указывает, что порт 80 (HTTP) закрыт.

Столбец STATE особенно важен. При сканировании окон возможными состояниями обычно являются open (открыт), closed (закрыт) или filtered (фильтрованный).

  • open: Указывает, что порт слушает подключения.
  • closed: Указывает, что порт не слушает подключения, но хост доступен.
  • filtered: Указывает, что Nmap не может определить, открыт ли порт или закрыт, потому что сеть фильтрация препятствует Nmap доступу к порту.

В этом примере все отсканированные порты отмечаются как closed. Это означает, что целевой хост доступен, но он не принимает подключения по этим портам.

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

Теперь давайте используем команду grep, чтобы найти открытые порты в файле window.txt.

grep "open" window.txt

Если нет открытых портов, команда не вернёт никакого вывода. В нашем примере вывод пуст.

Сравнение с ACK - сканированием в терминале Xfce

В этом шаге мы выполним ACK - сканирование и сравним его результаты с результатом Window - сканирования, которое мы выполняли ранее. Эта сравнение поможет нам понять различия между этими двумя типами сканирования и как их можно использовать для сбора различных типов информации о целевой системе.

ACK - сканирование (-sA) отправляет TCP - пакеты ACK на целевой хост. В отличие от SYN - сканирования, ACK - сканирование не пытается установить соединение. Вместо этого оно используется для определения наличия фаервола и того, как он обрабатывает не запрошенные ACK - пакеты.

Если присутствует фаервол, настроенный на блокировку не запрошенных ACK - пакетов, ACK - сканирование报告会 все порты как filtered (фильтрованные). Если фаервол отсутствует или настроен на разрешение не запрошенных ACK - пакетов, ACK - сканирование报告会 порты как unfiltered (не отфильтрованные) или closed (закрытые).

Теперь давайте выполним ACK - сканирование на адресе петли (127.0.0.1) и сохраним результаты в файл с именем ack.txt.

Откройте терминал Xfce.

В терминале введите следующую команду и нажмите Enter:

nmap -sA -oN ack.txt 127.0.0.1

Вы должны увидеть вывод, похожий на следующий:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:20 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE      SERVICE
22/tcp  unfiltered ssh
25/tcp  unfiltered smtp
80/tcp  unfiltered http

Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Теперь давайте сравним результаты ACK - сканирования с результатами Window - сканирования.

Помните вывод Window - сканирования (из window.txt):

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE  SERVICE
22/tcp  closed ssh
25/tcp  closed smtp
80/tcp  closed http
## Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

В Window - сканировании порты были отмечены как closed (закрытые). В ACK - сканировании порты отмечаются как unfiltered (не отфильтрованные). Это различие связано с тем, как работают эти два типа сканирования. Window - сканирование пытается установить соединение, в то время как ACK - сканирование только отправляет ACK - пакеты.

Состояние unfiltered в ACK - сканировании означает, что Nmap не может определить, открыт ли порт или закрыт, потому что ACK - пакеты не фильтруются. Это может означать, что фаервол отсутствует, или что фаервол настроен на разрешение не запрошенных ACK - пакетов.

Вы также можете использовать команду cat, чтобы вывести содержимое файла ack.txt:

cat ack.txt

В выводе вы должны увидеть отчет Nmap.

## Nmap 7.80 scan initiated Fri Oct 27 10:20:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Other addresses for localhost (alias(es)): localhost

PORT    STATE      SERVICE
22/tcp  unfiltered ssh
25/tcp  unfiltered smtp
80/tcp  unfiltered http

## Nmap done: 1 IP address (1 host up) scanned in 2.35 seconds

Резюме

В этом лабе участники учатся выполнять сканирование окон в Nmap. Они начинают с выполнения базового сканирования окон с использованием команды nmap -sW за которым следует IP - адрес, понимая, как оно использует особенности реализации TCP для выявления состояний портов. Затем они сканируют определенный диапазон портов с использованием nmap -sW -p 1 - 100, добавляют подробность к сканированию с использованием -v, и сохраняют результаты сканирования в файл с использованием -oN. Наконец, они анализируют результаты сканирования окон и сравнивают их с ACK - сканированием в терминале Xfce.