Задача: быстро отсканировать с помощью nmap большую подсеть.
Из-за количества хостов сканирование будет длиться сутки, неделю или больше, а с данными хочется работать в ближайшее время.
Одно из решений - это использовать многоходовочку, поделить сканирование на несколько шагов и быстро получить данные самых популярных портов, пока редкие порты сканируются.
Играемся с таймаутом RTT, таймаутом хостов (tarpit еще никто не отменял), количеством попыток на ответ и другие настройки.
Но если нам нужно увеличить точность, то запускаем с
Кстати, nmap умеет импортировать данные предыдущего сканирования и работать уже с ним, например,
запустит сканирование взяв в качестве целей для сканирования хосты из файла scan.xml, которые находились в статусе up в тот момент.
Важно, что если у хоста не будет открытых портов из топа, то он не попадет в выдачу первого шага, и втором и третьем шаге его попросту не будет.
Ставим как исходящий порт - 53 (DNS), чтобы обмануть некоторые наркоманские настройки фаерволов, получаем подобный скрипт.
Во время сканирования забираем полученные XML файлы, загружаем в нужный нам софт.
В других случаях используем Masscan и RustScan.
Из-за количества хостов сканирование будет длиться сутки, неделю или больше, а с данными хочется работать в ближайшее время.
Одно из решений - это использовать многоходовочку, поделить сканирование на несколько шагов и быстро получить данные самых популярных портов, пока редкие порты сканируются.
Играемся с таймаутом RTT, таймаутом хостов (tarpit еще никто не отменял), количеством попыток на ответ и другие настройки.
Но если нам нужно увеличить точность, то запускаем с
-Pn
, если скорость, то без него. Кстати, nmap умеет импортировать данные предыдущего сканирования и работать уже с ним, например,
nmap --script-args newtargets,state=up,iX=scan.xml
запустит сканирование взяв в качестве целей для сканирования хосты из файла scan.xml, которые находились в статусе up в тот момент.
Важно, что если у хоста не будет открытых портов из топа, то он не попадет в выдачу первого шага, и втором и третьем шаге его попросту не будет.
Ставим как исходящий порт - 53 (DNS), чтобы обмануть некоторые наркоманские настройки фаерволов, получаем подобный скрипт.
Во время сканирования забираем полученные XML файлы, загружаем в нужный нам софт.
В других случаях используем Masscan и RustScan.