Scansiona più indirizzi IP di quelli richiesti

4

Sto eseguendo questo comando tramite Zenmap:

nmap -T4 -A -v -iR 1000

È l'impostazione predefinita "Scansione intensa" con 1000 bersagli casuali. Su quasi tutte le scansioni che corro, tuttavia, sembra che esegua la scansione di oltre 1000 obiettivi. Di solito è solo di 3 o 5, ma ho avuto la scansione 1056.

L'output inizia con,

Starting Nmap 7.12 ( https://nmap.org )
NSE: Loaded 138 scripts for scanning.
NSE: Script Pre-scanning.
Initiating NSE at 08:48
Completed NSE at 08:48, 0.00s elapsed
Initiating NSE at 08:48
Completed NSE at 08:48, 0.00s elapsed
Initiating Ping Scan at 08:48
Scanning 1000 hosts

che implica che ha avviato correttamente la scansione di 1000 IP. Al termine della scansione, tuttavia:

Nmap done: 1056 IP addresses scanned in 14486.68 seconds
Raw packets sent: 252137 (11.381MB) | Rcvd: 387821 (36.462MB)

Qualcuno sa che cosa potrebbe causare questo?

    
posta rivermont - Will B. 28.09.2016 - 20:43
fonte

1 risposta

4

Questo è un bug in Nmap. Grazie per averlo scoperto! Risposta breve: c'era un bug nel modo in cui abbiamo contato quanti indirizzi erano già stati scansionati, che ho appena corretto in r36341.

Risposta più lunga: Nmap esegue scansioni in più fasi. I più importanti per questo bug sono l'individuazione degli host (scansione Ping) e la scansione delle porte. Nmap esegue il loop su tutti gli indirizzi possibili, esegue la discovery dell'host in blocchi di grandi dimensioni quando necessario e acquisisce un certo numero di host "su" per eseguire la scansione delle porte in un gruppo. Interrompe il looping degli indirizzi quando ha abbastanza obiettivi per un gruppo di host o quando gli indirizzi si esauriscono. Per -iR , gli indirizzi non si esauriscono mai, quindi controlliamo se o.numhosts_scanned è inferiore a o.max_ips_to_scan . Ciò funzionerebbe, tranne per il fatto che non consideriamo un "up" host "scansionato" fino a dopo la fase di scansione della porta. Quindi c'è il potenziale per controllare gli indirizzi extra. Durante una scansione lunga, la maggior parte di questi viene conteggiata comunque perché incrementano o.numhosts_scanned dopo la fase di scansione delle porte e prima della fase di scoperta dell'host per il gruppo successivo, ma l'ultimo gruppo host avrà qualche riporto. Ho risolto questo problema aggiungendo un ulteriore controllo del ciclo per garantire che gli host "su" fossero aggiunti a o.numhosts_scanned prima di verificare contro o.max_ips_to_scan durante la fase di rilevamento.

Esempio di output di debug da nmap -iR 2 -p80 -d -n :

Initiating Ping Scan at 15:14
Scanning 2 hosts [2 ports/host]
Completed Ping Scan at 15:14, 1.48s elapsed (2 total hosts)
Overall sending rates: 4.06 packets / s.

Questo dimostra che abbiamo corretto il ping di 2 indirizzi.

Nmap scan report for 20.240.133.236 [host down, received no-response]

Uno di questi era inattivo, quindi il rapporto viene stampato immediatamente. Uno di questi deve essere stato pubblicato perché abbiamo ricevuto solo uno di questi rapporti.

Initiating Ping Scan at 15:14
Scanning 54.28.85.198 [2 ports]
Completed Ping Scan at 15:14, 1.48s elapsed (1 total hosts)
Overall sending rates: 2.71 packets / s.

Oops! L'obiettivo "up" non è stato conteggiato per il numero di host scansionati, quindi ping scan pensa di doverne scansionare uno in più.

Nmap scan report for 54.28.85.198 [host down, received no-response]

Quello era giù. Quindi 2 host down e uno up.

Initiating Connect Scan at 15:14
Scanning 187.142.197.40 [1 port]
Completed Connect Scan at 15:14, 0.06s elapsed (1 total ports)
Overall sending rates: 17.06 packets / s.
Nmap scan report for 187.142.197.40
Host is up, received conn-refused (0.059s latency).
Scanned at 2016-09-29 15:14:26 UTC for 3s
PORT   STATE  SERVICE REASON
80/tcp closed http    conn-refused
Final times for host: srtt: 59196 rttvar: 33779  to: 194312

Ed ecco il terzo: la porta 80 è stata chiusa.

Read from /usr/bin/../share/nmap: nmap-payloads nmap-services.
Nmap done: 3 IP addresses (1 host up) scanned in 3.06 seconds

Ed ecco l'output che mostra che 3 indirizzi IP sono stati scansionati, anche se ho richiesto solo 2.

    
risposta data 29.09.2016 - 17:18
fonte

Leggi altre domande sui tag