Учебник по Nmap Idle Scan

Nmap

Idle Scan описанное в этом учебнике, является более сложной техникой, использующей щит (называемый зомби) между атакующим и целью, если сканирование будет обнаружено системой защиты (брандмауэром или IDS), она обвинит промежуточное устройство (зомби), а не компьютер атакующего.

Nmap Idle Scan

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

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

Когда вы посылаете незапрашиваемый пакет SYN/ACK, ответом будет пакет RST для сброса соединения, этот пакет RST будет содержать номер IP ID. Если сначала вы отправите незапрашиваемый SYN/ACK пакет на зомби-устройство, оно ответит RST пакетом, показывающим его IP ID, второй шаг - подделать этот IP ID, чтобы отправить поддельный SYN пакет на цель, заставляя ее поверить, что вы - зомби, цель ответит (или нет) на зомби, на третьем шаге вы отправите новый SYN/ACK на зомби, чтобы снова получить RST пакет для анализа увеличения IP ID.

  1. Отправка незапрашиваемый SYN/ACK на зомби-устройство, чтобы получить RST-пакет с указанием IP ID зомби.
  2. Отправка поддельный SYN-пакет, выдавая себя за зомби, заставив цель ответить незапрашиваемым SYN/ACK на зомби, заставив его ответить новым обновленным RST.
  3. Отправка новый незапрашиваемый SYN/ACK зомби, чтобы получить RST-пакет для анализа его нового обновленного IP ID.

Если порт цели открыт, она ответит устройству-зомби пакетом SYN/ACK, побуждая зомби ответить пакетом RST, увеличивающим ее IP ID. Затем, когда атакующий снова пошлет зомби пакет SYN/ACK, IP ID будет увеличен на +2, как показано в таблице выше.

Если порт закрыт, цель не пошлет зомби пакет SYN/ACK, а пошлет RST, и ее IP ID останется прежним, когда атакующий пошлет зомби новый ACK/SYN, чтобы проверить его IP ID, он увеличится только на +1 (из-за ACK/SYN, посланного зомби, без увеличения, спровоцированного целью).

  1. То же, что и выше
  2. В этом случае цель отвечает зомби пакетом RST вместо SYN/ACK, не позволяя зомби отправить RST, который может увеличить его IP ID.
  3. Атакующий посылает SYN/ACK, а зомби отвечает только увеличением, сделанным при взаимодействии с атакующим, а не с целью.

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

  1. То же, что и выше
  2. В этом случае нет ответа от цели, что не позволяет зомби отправить RST, который может увеличить его IP ID.
  3. То же, что и выше

Поиск зомби-устройства

Nmap NSE (Nmap Scripting Engine) предоставляет скрипт IPIDSEQ для обнаружения уязвимых зомби-устройств. В следующем примере скрипт используется для сканирования порта 80 случайных 1000 целей для поиска уязвимых хостов, уязвимые хосты классифицируются как Incremental или little-endian incremental.

Пример IPIDSEQ для случайного поиска кандидатов в зомби:

nmap -p80 --script ipidseq -iR 1000

Самый сложный шаг при выполнении Idle-сканирования - найти уязвимое зомби-устройство, это сложно по многим причинам:

  • Многие интернет-провайдеры блокируют этот тип сканирования.
  • Большинство операционных систем присваивают IP ID случайным образом
  • Хорошо настроенные брандмауэры и honeypots могут выдавать ложные срабатывания.

В таких случаях при попытке выполнить Idle scan вы получите следующую ошибку:

Если вам повезет на этом этапе, вы найдете старую систему Windows, старую систему IP-камер или старый сетевой принтер, последний пример рекомендуется в книге Nmap.

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

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

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

В следующих примерах обнаружение хоста пропущено и дана инструкция по сканированию в режиме ожидания с использованием IP 192.168.56.102 в качестве устройства зомби для сканирования портов 80.21.22 и 443 цели 192.168.56.101.

Где:

  • nmap: вызывает программу
  • -Pn: пропускает обнаружение хоста.
  • -sI: сканирование вхолостую
  • 192.168.56.102: зомби.
  • -p80,21,22,443: указывает сканировать указанные порты.
  • 192.68.56.101: является целью.

В следующем примере только опция, определяющая порты, заменена на -p-, что дает указание Nmap сканировать наиболее распространенные 1000 портов.

Заключение

В прошлом самым большим преимуществом Idle Scan было как сохранение анонимности, так и подделка личности устройства, которое не подвергалось фильтрации и не вызывало доверия у защитных систем; оба способа использования кажутся устаревшими из-за сложности поиска уязвимых зомби (тем не менее, это, конечно, возможно). Оставаться анонимным с помощью щита было бы практичнее, используя публичную сеть, а сложные брандмауэры или IDS вряд ли будут сочетаться со старыми и уязвимыми системами как заслуживающие доверия.

Комментарии: 0