Perché una scansione nmap -sT mostra le porte filtrate ma -sS mostra le porte chiuse

9

Quali sono i possibili motivi per cui una scansione nmap -sT mostrerebbe "porte filtrate" ma una scansione nmap -sS identica mostra "porte chiuse"? Comprendo che -sT è un completo TCP Connect, che è più facile da rilevare (e da filtrare) rispetto alla scansione% open di -sS . Ma perché?

Entrambi i tipi di scansione inviano un pacchetto SYN; entrambi i tipi di scansioni devono attendere un SYN | ACK o un RST. L'unica differenza che vedo è che la scansione semiaperta invierà un RST invece di terminare l'handshake della connessione.

Inoltre, ho eseguito il comando nmap -sT -P0 che indica a nmap di non inviare prima un ping (penso che sia in genere sia un ping TCP che un ping ICMP). Facendo questo comando, risponde con "porte chiuse" che è identica alla risposta di scansione -sS . È perché -sT viene normalmente bloccato a causa del ping prima?

Questa è la mia ipotesi, ma voglio alcune opinioni più esperte su quello che sto vedendo e su quali tipi di scansioni posso fare per approfondire. A proposito, sono ovviamente autorizzato a fare queste scansioni (lavoro in classe).

    
posta KyleM 20.02.2013 - 06:17
fonte

3 risposte

11

Se hai salvato l'output XML di Nmap, c'è un attributo del tag <state> chiamato reason , che ti darà il motivo per cui Nmap ha scelto di etichettare una porta chiusa, aperta o filtrata. Di solito è qualcosa come "reset", "conn-refused", "syn-ack" o "port-unreach", a seconda del tipo di scansione e dello stato della porta. Queste informazioni possono anche essere visualizzate nell'output "normale" utilizzando il flag --reason o impostando -d per il debug.

Un malinteso comune è che la scansione SYN ( -sS ) è "più furtiva" della scansione TCP Connect ( -sT ). Un tempo, e da un punto di vista, questo era vero: cioè, dal punto di vista dell'applicazione in esecuzione sull'host. Indietro nel giorno, prima di IDS e firewall stateful, la migliore indicazione di una scansione della porta era log delle applicazioni che mostra le connessioni che sono state aperte e immediatamente chiuse. La scansione SYN, poiché distrugge la connessione prima che lasci il kernel, non attraversa mai l'applicazione, quindi questi registri non vengono scritti. Dal punto di vista della rete, tuttavia, il comportamento di una scansione SYN semiaperta (SYN, SYN-ACK, RST) è piuttosto insolito e può essere un indicatore significativo di una scansione della porta, anche se solo una, aperta la porta è scansionata. In questo caso (eseguendo la scansione di un numero limitato di porte che potrebbero essere aperte, protette da IDS), la scansione TCP Connect potrebbe effettivamente essere "stealt".

-Pn (precedentemente noto come -P0 e -PN ) indica a Nmap di saltare la fase di individuazione dell'host e presuppone invece che tutti gli host siano attivi. I dettagli della scoperta dell'host sono ben documentati, ma è possibile che questo comportamento stia attivando un firewall adattativo sull'host I firewall adattivi possono essere complicati, dal momento che si ottiene una varietà di risposte a seconda del proprio comportamento e della velocità della scansione. Suggerirei di rallentare la scansione con una qualsiasi delle opzioni di timing e di ridurre il numero di porte scansionate a una manciata, fino a quando ottieni risultati coerenti.

    
risposta data 20.02.2013 - 14:19
fonte
4

Se vuoi indagare ulteriormente, attiva il flag --packet-trace . Ciò consentirà di tracciare i pacchetti nmap inviati e ricevuti al fine di determinare lo stato esatto della porta.

Ci può essere una varietà di fattori che portano alla differenza nei risultati. È difficile determinare la causa esatta senza ulteriori informazioni.

    
risposta data 20.02.2013 - 08:14
fonte
1

Questo è quasi certamente dovuto alla perdita di pacchetti. I tempi funzionano in modo leggermente diverso tra connessione e scansione SYN. Prova a scansionare un numero inferiore di porte con tempi meno intensi. Inoltre, se non sei sull'ultima versione di nmap, prova ad eseguire l'aggiornamento, poiché modificano continuamente gli algoritmi di temporizzazione.

    
risposta data 20.10.2013 - 18:57
fonte

Leggi altre domande sui tag