Port scanning: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
ho sistemato un refuso: da "le porte aperte presentaTo" a "le porte aperte presentaNo" |
rimossi wl secondo linee guida vedi Wikipedia:Wikilink#Wikilink nei titoli di sezioni e sottosezioni |
||
Riga 26:
{{Vedi anche|Idle scan}}
===
I più semplici port scanning utilizzano funzioni di rete del sistema operativo e normalmente sono impiegati quando non è possibile effettuare una scansione SYN scan (descritto di seguito).
Riga 35:
Questo metodo è “rumoroso”, in particolare se si tratta di un “portsweep”: i servizi possono registrare l'indirizzo IP del mittente e gli [[Intrusion detection system|Intrusion Detection System]] sono in grado far scattare un allarme.
===
SYN scan è un'altra forma di TCP scanning. Invece di utilizzare le funzioni di rete del sistema operativo, il port scan genera lui stesso pacchetti IP non validi, e monitora le risposte. Questo tipo di scansione è anche conosciuto come “half-open scanning”, perché in realtà non viene mai aperta completamente una connessione TCP. Il port scan genera un pacchetto SYN. Se la porta di destinazione è aperta, risponde con un pacchetto SYN-ACK. L'host scanner risponde con un pacchetto RST, così da chiudere la connessione prima che la three-way handshake sia completata. Se la porta è chiusa, ma non filtrata, l'obiettivo sarà di rispondere immediatamente con un pacchetto RST. In entrambi i casi la connessione non verrà mai completata e per questa ragione difficilmente comparirà nei file di log, anche se generalmente viene riconosciuta e registrata dagli [[Intrusion detection system|IDS]].
L'uso di reti “raw” ha diversi vantaggi, dando allo scan pieno controllo dei pacchetti inviati e dei timeout per le risposte, e viene fornito un rapporto dettagliato delle risposte. C'è un dibattito su quale scansione sia meno intrusiva sull'host di destinazione. SYN scan ha il vantaggio che i singoli servizi non ricevono effettivamente una connessione. Tuttavia, la RST durante la three-way handshake può causare problemi per alcune reti, in particolare nei dispositivi più semplici come le stampanti.
===
È possibile utilizzare anche l'UDP scan, nonostante siano presenti vari problemi tecnici. [[User Datagram Protocol|UDP]] è un protocollo [[Comunicazione senza connessione|senza connessione]], per questo motivo non esiste un equivalente al pacchetto TCP SYN. Tuttavia, se un pacchetto UDP viene inviato ad una porta che non è aperta, il sistema risponderà con un pacchetto [[Internet Control Message Protocol|ICMP]] tipo 3 codice 3 (port unreachable) o tipo 3 codice 13 (administratively prohibited). La maggior parte dei port scan UDP usano questo tipo di scansione, e utilizzano l'assenza di una risposta per dedurre l'apertura di una porta. Tuttavia, se una porta è bloccata da un [[firewall]], questo metodo segnalerà erroneamente che la porta è aperta.
Un approccio alternativo è quello di inviare pacchetti UDP per applicazioni specifiche, nella speranza di generare una risposta a [[livello di applicazione]]. Per esempio, inviando una query DNS alla porta 53 si tradurrà in una risposta, se è presente un server DNS. Questo metodo è molto più affidabile per individuare porte aperte. Tuttavia, è limitato alla scansione delle porte per le quali è disponibile un pacchetto sonda tramite un'applicazione specifica. Alcuni tools (e.g. [[nmap]]) hanno generalmente sonde per meno di 20 servizi UDP, mentre alcuni tools commerciali (e.b. [[nessus]]) ne hanno fino a 70. In alcuni casi, un servizio può essere in ascolto su una determinata porta, ma configurato a non rispondere a un determinato pacchetto sonda.<ref>{{Cita web|url=http://www.networkuptime.com/nmap/page3-10.shtml|titolo=Secrets of Network Cartography - UDP Scan (-sU)|accesso=5 luglio 2016|urlmorto=sì|urlarchivio=https://web.archive.org/web/20160516002101/http://www.networkuptime.com/nmap/page3-10.shtml|dataarchivio=16 maggio 2016}}</ref>
===
L'ACK scan è una delle scansioni più insolite, in quanto non si determina esattamente se la porta è aperta o chiusa, ma se una determinata porta è filtrata o non filtrata. Ciò è particolarmente utile quando si tenta di sondare se in un host è presente un firewall e le sue regole. I pacchetti inviati per effettuare l'ACK scanning hanno solamente il flag ACK abilitato e si avranno risposte con pacchetti RST solamente se le porte sono aperte o chiuse. In caso contrario, cioè se non arriva alcuna risposta o vengono restituiti errori ICMP, le porte vengono classificate come filtrate.<ref>{{Cita web|url=https://nmap.org/man/it/man-port-scanning-techniques.html|titolo=Tecniche di Port Scanning|sito=nmap.org|accesso=5 luglio 2016}}</ref>
Riga 51:
Questo tipo di scansione viene utilizzato molto raramente, a causa della sua natura obsoleta, poiché la Window scanning è piuttosto inaffidabile nel determinare se una porta è aperta o chiusa. Genera un pacchetto uguale all'ACK scan, ma controlla se il campo TCP Window del pacchetto RST di ritorno è stato modificato. Se ritorna una grandezza positiva per il campo Window allora la porta è aperta, se ritorna una grandezza pari a zero si ha una porta chiusa. Quindi al contrario dell'ACK scan che ad ogni pacchetto RST restituito dall'host cataloga la porta come non filtrata, questo scan determina se la porta è aperta o chiusa in base se il valore RST è positivo o pari a zero. Purtroppo il Window scan non è spesso affidabile poiché utilizza un'implementazione presente solamente in alcuni sistemi.
===
Dal momento che SYN scan non è abbastanza efficiente, poiché i firewall, che vengono scansionati, bloccano pacchetti della forma del SYN scan, si può utilizzare FIN scan. I pacchetti FIN possono sorpassare i firewall senza apportare modifiche. Le porte chiuse rispondono a un pacchetto FIN con un pacchetto con RST attivo, mentre le porte aperte o filtrate ignorano direttamente il pacchetto FIN e non viene restituito alcun pacchetto in risposta. Purtroppo non è affidabile poiché sistemi come Windows, IRIX, Cisco e HP-UX rispondono sempre con un pacchetto con flag RST attivo.
|