Случайная выборка целей в Nmap

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

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

Введение

В этом лабе мы исследуем, как случайным образом перемешивать порядок целевых хостов при сканировании с помощью Nmap. Сначала мы выполним стандартный сканирование подсети 192.168.1.0/24, чтобы определить активные хосты.

Затем мы используем параметр --randomize-hosts, чтобы перемешать порядок, в котором Nmap сканирует целевые IP-адреса, как для подсети (192.168.1.0/24), так и для конкретного диапазона (192.168.1.1-10). Мы также добавим подробность с помощью флага -v и сохраним результаты случайного сканирования в файл с именем random.txt. Наконец, мы сравним выводы в терминале Xfce, чтобы наблюдать за эффектом случайной сортировки.

Сканировать подсеть обычным способом с помощью nmap 192.168.1.0/24

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

Прежде чем мы начнем, кратко обсудим, что такое Nmap и сканирование подсети:

  • Nmap (Network Mapper): Свободная и открытая утилита для обнаружения сети и аудита безопасности. Она используется для обнаружения хостов и служб в компьютерной сети путем отправки пакетов и анализа ответов.
  • Подсеть: Логическое подразделение IP- сети. Запись /24 (CIDR-нотация) указывает на маску подсети, которая в данном случае равна 255.255.255.0. Это означает, что первые три октета (192.168.1) определяют сеть, а последний октет (0-255) определяет адреса хостов в этой сети.
  • Сканирование подсети: Процесс сканирования всех возможных IP-адресов в подсети для определения активных хостов.

Теперь выполним сканирование. Откройте терминал Xfce в виртуальной машине LabEx. Помните, что ваша домашняя директория по умолчанию - ~/project.

Выполните следующую команду:

sudo nmap 192.168.1.0/24

Вам будет предложено ввести пароль. Поскольку у пользователя labex есть права sudo без пароля, просто нажмите Enter.

Эта команда instructs Nmap to scan all IP addresses from 192.168.1.0 to 192.168.1.255. Nmap will send various probes to each IP address to determine if a host is active.

The output will show you a list of discovered hosts and their status (e.g., "Host is up"). It might also show open ports on those hosts if Nmap is able to determine them.

Пример вывода (фактический вывод может отличаться в зависимости от вашей сети):

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
Not shown: 999 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh

Nmap scan report for 192.168.1.100
Host is up (0.00030s latency).
Not shown: 999 closed ports
PORT    STATE SERVICE
80/tcp  open  http

Nmap done: 256 IP addresses (2 hosts up) scanned in 5.00 seconds

This output indicates that two hosts were found to be up: 192.168.1.1 and 192.168.1.100. It also shows that port 22 (SSH) is open on 192.168.1.1 and port 80 (HTTP) is open on 192.168.1.100.

Случайным образом перемешивать хосты с помощью nmap --randomize-hosts 192.168.1.0/24

В этом шаге мы усовершенствуем наш сканирование сети, случайным образом перемещая порядок, в котором Nmap сканирует хосты в подсети 192.168.1.0/24. Эта техника полезна для обхода базовых систем обнаружения вторжений (IDS) и делает сканирование менее предсказуемым.

По умолчанию Nmap сканирует хосты последовательным порядком. Это может быть легко обнаружено сетевыми инструментами мониторинга. Параметр --randomize-hosts перемешивает порядок целевых IP-адресов перед сканированием, делая его труднее идентифицировать.

Для случайного перемешивания порядка хостов выполните следующую команду в терминале Xfce:

sudo nmap --randomize-hosts 192.168.1.0/24

Как и ранее, вас попросят ввести пароль. Поскольку у пользователя labex есть права sudo без пароля, просто нажмите Enter.

эта команда будет сканировать ту же подсеть (192.168.1.0/24), что и в предыдущем шаге, но порядок сканирования IP-адресов будет случайным.

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

Пример вывода (фактический вывод может отличаться в зависимости от вашей сети):

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for 192.168.1.100
Host is up (0.00030s latency).
Not shown: 999 closed ports
PORT    STATE SERVICE
80/tcp  open  http

Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
Not shown: 999 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh

Nmap done: 256 IP addresses (2 hosts up) scanned in 5.10 seconds

Заметьте, что порядок хостов (192.168.1.100 и 192.168.1.1) в выводе может отличаться от предыдущего скана. Это из-за параметра --randomize-hosts.

Случайным образом перемешивать диапазон с помощью nmap --randomize-hosts 192.168.1.1-10

В этом шаге мы сосредоточимся на сканировании определенного диапазона IP-адресов (от 192.168.1.1 до 192.168.1.10) и случайном перемешивании порядка сканирования этих хостов. Это полезно, когда вы хотите сосредоточиться на более мелком подмножестве сети и при этом сохранить определенную степень скрытности.

Параметр --randomize-hosts, как мы видели на предыдущем шаге, перемешивает порядок целевых IP-адресов. На этот раз мы применим его к конкретному диапазону, а не к всей подсети.

Для случайного перемешивания порядка хостов в диапазоне 192.168.1.1-10 выполните следующую команду в терминале Xfce:

sudo nmap --randomize-hosts 192.168.1.1-10

Вам будет предложено ввести пароль. Поскольку у пользователя labex есть права sudo без пароля, просто нажмите Enter.

эта команда instructs Nmap to scan IP addresses from 192.168.1.1 to 192.168.1.10, but in a randomized order.

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

Пример вывода (фактический вывод может отличаться в зависимости от вашей сети):

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:10 UTC
Nmap scan report for 192.168.1.5
Host is up (0.00025s latency).
Not shown: 999 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh

Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
Not shown: 999 closed ports
PORT    STATE SERVICE
80/tcp  open  http

Nmap done: 10 IP addresses (2 hosts up) scanned in 2.00 seconds

В этом примере Nmap сканировал IP-адреса от 192.168.1.1 до 192.168.1.10 в случайном порядке и обнаружил два активных хоста: 192.168.1.5 и 192.168.1.1. Показанные порты - это только примеры и могут отличаться в вашей среде.

Добавить подробность с помощью nmap -v --randomize-hosts 192.168.1.0/24

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

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

Для добавления подробности и случайного перемешивания порядка хостов выполните следующую команду в терминале Xfce:

sudo nmap -v --randomize-hosts 192.168.1.0/24

Вам будет предложено ввести пароль. Поскольку у пользователя labex есть права sudo без пароля, просто нажмите Enter.

эта команда будет сканировать подсеть 192.168.1.0/24, случайным образом перемещая порядок хостов и предоставляя более подробный вывод.

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

Пример вывода (фактический вывод может отличаться в зависимости от вашей сети):

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:15 UTC
Initiating Ping Scan at 10:15
Scanning 256 hosts [2 ports/host]
Completed Ping Scan at 10:15, 0.72s elapsed (256 total hosts)
Initiating Parallel DNS resolution of 256 hosts. at 10:15
Completed Parallel DNS resolution of 256 hosts. at 10:15, 1.81s elapsed
Initiating SYN Stealth Scan at 10:15
Scanning 256 hosts [1000 ports/host]
Discovered open port 22/tcp on 192.168.1.1
Discovered open port 80/tcp on 192.168.1.100
Completed SYN Stealth Scan at 10:16, 3.21s elapsed (256 total hosts)
Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
PORT   STATE SERVICE
22/tcp open  ssh

Nmap scan report for 192.168.1.100
Host is up (0.00030s latency).
PORT   STATE SERVICE
80/tcp open  http

Nmap done: 256 IP addresses (2 hosts up) scanned in 5.74 seconds

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

Сохранить результаты с помощью nmap --randomize-hosts -oN random.txt 192.168.1.0/24

В этом шаге мы узнаем, как сохранять результаты сканирования Nmap в файл. Это至关重要 для последующего анализа, отчета или сравнения с предыдущими сканированиями. Мы продолжим перемешивать порядок хостов при сохранении вывода.

Nmap 提供了几种保存扫描结果的选项,每种选项都有不同的格式。-oN选项指定“正常”输出,这是人类可读的,适合用简单工具进行解析。

要将随机主机扫描的结果保存到名为random.txt的文件中,请在 Xfce 终端中执行以下命令:

sudo nmap --randomize-hosts -oN random.txt 192.168.1.0/24

系统会提示您输入密码。由于labex用户具有无密码的sudo权限,只需按Enter即可。

此命令告诉 Nmap 扫描 192.168.1.0/24 子网,随机化主机顺序,并将输出以“正常”格式保存到当前目录(~/project)中名为random.txt的文件中。

扫描完成后,您可以使用cat命令或像nano这样的文本编辑器查看random.txt文件的内容。

cat random.txt

示例输出(实际输出将根据您的网络而有所不同):

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:20 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
PORT   STATE SERVICE
22/tcp open  ssh

Nmap scan report for 192.168.1.100
Host is up (0.00030s latency).
PORT   STATE SERVICE
80/tcp open  http

Nmap done: 256 IP addresses (2 hosts up) scanned in 5.00 seconds

random.txt文件现在包含扫描期间屏幕上显示的相同信息。您现在可以使用此文件进行进一步的分析或报告。

Сравнить выводы в терминале Xfce

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

Во - первых, давайте вспомним команды, которые мы выполняли:

  1. sudo nmap 192.168.1.0/24 (обычное сканирование)
  2. sudo nmap --randomize-hosts 192.168.1.0/24 (случайная сортировка хостов)
  3. sudo nmap --randomize-hosts 192.168.1.1 - 10 (случайная сортировка в заданном диапазоне)
  4. sudo nmap -v --randomize-hosts 192.168.1.0/24 (подробное сканирование с случайной сортировкой хостов)
  5. sudo nmap --randomize-hosts -oN random.txt 192.168.1.0/24 (случайная сортировка хостов, сохранение в файл)

Для сравнения выводов вы можете использовать несколько методов:

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

  • Сравнение обычного сканирования с сохраненным файлом: Вы можете снова выполнить первую команду и сравнить ее вывод с содержимым файла random.txt, который мы создали в предыдущем шаге.

    sudo nmap 192.168.1.0/24
    cat random.txt

    Обратите внимание, что вывод должен быть похож, но порядок сканируемых хостов может отличаться из - за параметра --randomize-hosts, использованного при создании random.txt.

  • Использование команды diff (необязательно): Для более детального сравнения вы можете сохранить вывод обычного сканирования в файл (например, normal.txt), а затем использовать команду diff для сравнения двух файлов.

    sudo nmap -oN normal.txt 192.168.1.0/24
    diff normal.txt random.txt

    Команда diff подсветит любые различия между двумя файлами. Если единственное отличие - это порядок хостов, вывод покажет строки, которые добавляются и удаляются, но содержимое будет одинаковым.

При сравнении выводов вы должны быть в состоянии заметить следующее:

  • Параметр --randomize-hosts изменяет порядок, в котором Nmap сканирует хосты.
  • Параметр -v предоставляет более подробную информацию о процессе сканирования.
  • Параметр -oN сохраняет результаты сканирования в файл в человекочитаемом формате.

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

Резюме

В этой лабораторной работе мы изучили возможности Nmap для сканирования сети и обнаружения хостов. Мы начали с выполнения стандартного сканирования подсети с использованием команды nmap 192.168.1.0/24, чтобы определить активные хосты в указанном диапазоне сети. Этот фундаментальный шаг показал, как Nmap опрашивает IP - адреса для определения доступности хостов.

Затем мы научились перемешивать порядок, в котором Nmap сканирует цели, с использованием параметра --randomize-hosts, применяя его как к подсети (192.168.1.0/24), так и к конкретному диапазону IP - адресов (192.168.1.1 - 10). Мы также усилили сканирование с использованием подробности (-v) для более детального вывода и сохранили результаты в файл (random.txt) для последующего сравнения, подчеркивая практические методы управления и документирования сканирований Nmap.