Interrompe la scansione Nmap e preserva l'output XML

8

Ogni volta che eseguo Nmap, utilizzo il flag -oA . L'output XML è un elemento di output importante mentre lo inserisco in un numero di parser più Metasploit con db_import . L'opzione --resume può riprendere una scansione ma non è compatibile con l'output XML.

Mi capita molto spesso che una scansione sia completata al 99.XX% entro un ragionevole lasso di tempo e poi impiega il doppio del tempo per completare l'ultima percentuale.

C'è un modo per terminare la scansione di nmap e completare il processo di output XML in anticipo? Vorrei evitare di dover eseguire nuovamente la scansione o di completare manualmente il file xml a mano / script personalizzato.

Ho provato a far cadere l'interfaccia eth0 pensando che avrebbe fatto arrestare / arrestare Nmap la scansione, tuttavia ciò non sembra affatto di aiuto.

Nota: so che ci sono dei flag che posso aggiungere all'inizio della scansione per ridurre il timeout e prevenire questo problema. Ma questa domanda è più focalizzata sull'avvio della scansione senza quei flag.

    
posta KDEx 25.11.2015 - 05:08
fonte

2 risposte

14

Nmap dev here: Siamo spiacenti, ma non esiste un'opzione per interrompere in modo pulito una scansione e finalizzare l'output XML. L'opzione --resume , come hai notato, funziona solo con l'output Normal e Grepable. Inoltre non può far fronte a --randomize-hosts . Ecco le fasi di sviluppo che avremmo bisogno di intraprendere per rendere questo possibile:

  1. Estendi --resume per analizzare l'output XML di Nmap per l'ultimo host completato. Non troppo difficile.
  2. Modifica il flusso di output XML di Nmap per clobare i tag finali di un file XML ben formato se vengono avviate --append-output o --resume . Ingannevole, ma fattibile.
  3. Estendi i gestori di segnale di Nmap per finalizzare l'output XML, se presente. Difficile perché i gestori di segnale SIGINT e SIGSTOP dovrebbero essere il più piccoli possibile e non possono fare affidamento su handle di file che si trovano in uno stato utilizzabile. Forse rendere questa parte di un diverso gestore di segnale come SIGUSR1 o qualcosa del genere e / o associarlo a una sequenza di tasti ctrl. Ricorda inoltre che Nmap deve funzionare allo stesso modo su Windows, Linux, OS X, FreeBSD, Solaris e molte altre piattaforme, quindi in questi casi la gestione dei segnali potrebbe apparire molto diversa.

Sentiti libero di aggiungere una richiesta di funzionalità al link per questo, e fai riferimento a questa domanda e risposta.

EDIT: è stato aggiunto in Nmap 7.40

    
risposta data 25.11.2015 - 21:30
fonte
0

Hai provato a inviare il processo a sighup o a sigstop?

qualcosa come kill -s STOP [pid] o è -s SIGSTOP. Non ricordo.

    
risposta data 25.11.2015 - 06:06
fonte

Leggi altre domande sui tag