La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Network Scanning Laboratorio di amministrazione di sistema Cappellazzo Pietro, 809652 A.A. 2006/07.

Presentazioni simili


Presentazione sul tema: "Network Scanning Laboratorio di amministrazione di sistema Cappellazzo Pietro, 809652 A.A. 2006/07."— Transcript della presentazione:

1 Network Scanning Laboratorio di amministrazione di sistema Cappellazzo Pietro, A.A. 2006/07

2 Network Scanning2 Procedura per identificare gli host attivi su una rete, allo scopo di attaccarli o per valutare la sicurezza della rete. Le procedure di Scan, come ad esempio ping sweeps port scans ritornano informazioni su quali indirizzi IP sono attivi nella rete e quali servizi questi offrono.

3 Network Scanning3 Nmap È fra i più potenti e diffusi software open source per effettuare network scanning. Nmap (acronimo di Network Mapper) è presente sulla rete ormai da anni e sono state rilasciate varie versioni, compatibili con molti sistemi operativi. Nmap è divenuto uno degli strumenti praticamente indispensabili della "cassetta degli attrezzi" di un amministratore di sistema, ed è usato per test di penetrazione e compiti di sicurezza informatica in generale.

4 Network Scanning4 Nmap Creato per effettuare port scanning: individuare porte aperte e servizi disponibili su un computer bersaglio. Utilizza la tecnica del fingerprinting: è in grado di ipotizzare quale sistema operativo sia utilizzato dal computer bersaglio.

5 Network Scanning5 Nmap Utilizza i pacchetti IP per ottenere informazioni come: gli host presenti su una rete; i servizi che tali host rendono disponibili; i sistemi operativi presenti sulla macchina; la presenza di firewall ed altre. Viene utilizzato anche da amministratori di rete per task secondari come il monitoraggio di host o il testing dei tempi di risposta dei servizi.

6 Network Scanning6 Nmap Le porte rilevate possono apparire come: Open – Una applicazione accetta attivamente connessioni TCP o UDP su questa porta. Closed – Una porta chiusa è accessibile, ma non vi è alcuna applicazione in ascolto su di essa. Filtered – Nmap non può determinare con esattezza se la porta sia aperta o meno in quanto un filtro ne impedisce laccesso. Unfiltered – la porta è accessibile, ma Nmap non può determinarne lo stato. Open|filtered – Nmap non è in grado di determinare se una porta è aperta oppure filtrata. Closed|filtered – Nmap non è in grado di determinare se una porta è chiusa oppure filtrata.

7 Network Scanning7 Nmap – esempio – # nmap -A -T4 scanme.nmap.org playground Starting nmap ( ) Interesting ports on scanme.nmap.org ( ): (The 1663 ports scanned but not shown below are in state: filtered) PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 3.9p1 (protocol 1.99) 53/tcp open domain 70/tcp closed gopher 80/tcp open http Apache httpd ((Fedora)) 113/tcp closed auth Device type: general purpose Running: Linux 2.4.X|2.5.X|2.6.X OS details: Linux , Linux Uptime days (since Thu Jul 21 03:38: ) Interesting ports on playground.nmap.org ( ): (The 1659 ports scanned but not shown below are in state: closed) PORT STATE SERVICE VERSION 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn 389/tcp open ldap? 445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds 1002/tcp open windows-icfw? 1025/tcp open msrpc Microsoft Windows RPC 1720/tcp open H.323/Q.931 CompTek AquaGateKeeper 5800/tcp open vnc-http RealVNC 4.0 (Resolution 400x250; VNC TCP port: 5900) 5900/tcp open vnc VNC (protocol 3.8) MAC Address: 00:A0:CC:63:85:4B (Lite-on Communications) Device type: general purpose Running: Microsoft Windows NT/2K/XP OS details: Microsoft Windows XP Pro RC1+ through final release Service Info: OSs: Windows, Windows XP Nmap finished: 2 IP addresses (2 hosts up) scanned in seconds

8 Network Scanning8 Ping sweep Vengono inviati dei pacchetti ICMP (Internet Control Message Protocol), in particolare dei pacchetti Tipo 8 (echo request), conosciuti anche come pacchetti ping che identificano se un host è attivo. Ci sono anche altri pacchetti ICMP che possono risultare utili, ad esempio: Tipo 13 (timestamp request) – viene richiesto il tempo di sistema di un host target Tipo 15 (information request) – è un particolare messaggio creato per supportare alcuni sistemi auto-configuranti (ad esempio diskless workstation) che nel boot devono poter trovare il proprio indirizzo nella rete. Tipo 17 (subnet address mask request) – con questo messoggio riusciamo a determinare la subnet mask usata dallhost.

9 Network Scanning9 Ping Sweep -Nmap- Nmap può effettuare degli ICMP ping sweep scans, utilizzando lopzione –sP Ecco un esempio: nmap -sP /24 … Host ( ) seems to be a subnet broadcast address (2 extra pings). Host ( ) appears to be up. Host ( ) appears to be up. Host ( ) appears to be up. Host ( ) appears to be up. Host ( ) appears to be up. Host ( ) appears to be up. Host ( ) appears to be up. Host ( ) appears to be up. Host ( ) seems to be a subnet broadcast address (2 extra pings). Nmap run completed IP addresses (8 hosts up)

10 Network Scanning10 Port Scanning Il Port Scanning è un processo di connessione a porte TCP e UDP del sistema al fine di determinare quali servizi siano in stato di esecuzione o in stato di listening. Un amministratore di sistema deve poter identificare le debolezze della propria rete e dei propri sistemi, col fine di evitarne lo sfruttamento da parte di utenti maliziosi.

11 Network Scanning11 TCP port scanning Esistono diversi tipi di port scanning per controllare se le porte TCP di un sistema sono aperte o chiuse, questi sono classificabili in tre classi: Standard scanning methods Vanilla connect() scanning Half-open SYN flag scanning Stealth TCP scanning methods Inverse TCP flag scanning ACK flag probe scanning TCP fragmentation scanning Third-party and spoofed TCP scanning methods FTP bounce scanning Proxy bounce scanning Sniffer-Based spoofed scanning IP ID header scanning

12 Network Scanning12 Standard scanning methods I metodi definiti nella categoria Standard scanning methods sono delle tecniche molto semplici e dirette, usate per identificare le porte e i servizi TCP accessibili in modo accurato. Questi sono metodi certi, ma possono essere facilmente rilevati e loggati.

13 Network Scanning13 Vanilla connect() method È il metodo più semplice, conosciuto anche come TCP connect() viene stabilita unintera connessione TCP/IP con una porta TCP dellhost target Data laffidabilità del protocollo TCP/IP, questo metodo è molto accurato per determinare quali servizi sono attivi in un dato host

14 Network Scanning14 Vanilla connect() method Ecco i pacchetti inviati da questo metodo Quando una porta è aperta Quando una porta è chiusa

15 Network Scanning15 Vanilla connect() method - Nmap Nmap può effettuare un TCP connect() portscan, utilizzando lopzione –sT ESEMPIO : nmap -sT -PI … Interesting ports on marco ( ): (The 1652 ports scanned but not shown below are in state: closed) PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 111/tcp open rpcbind 443/tcp open https 3306/tcp open mysql 6000/tcp open X /tcp open gnutella 10000/tcp open snet-sensor-mgmt … ATTENZIONE !!! il servizio che vediamo abbinato alla porta e al protocollo (tcp/udp) non indica direttamente l'applicativo che lo sta usando, ma solo il servizio ufficialmente abbinato alla stessa dalle norme IANA

16 Network Scanning16 Half-open SYN flag scanning In modo simile al metodo connect(), anche qui viene inviato un pacchetto SYN per la sincronizzazione tra i due host Nel caso dellhalf open SYN port scanning, quando una porta viene rilevata aperta, viene inviato un pacchetto RST che resetta la connessione TCP Questo fa si che non ci sia una completa connessione fra i due host, e quindi sia più difficile rilevare e loggare lo scanning

17 Network Scanning17 Half-open SYN flag scanning Ecco i pacchetti (ed i flags) inviati da questo metodo Quando una porta è aperta Quando una porta è chiusa

18 Network Scanning18 Half-open SYN flag scanning - Nmap Nmap può effettuare un SYN portscan, utilizzando lopzione –sS ESEMPIO: nmap -sS … Interesting ports on chaos ( ): (The 1668 ports scanned but not shown below are in state: closed) PORT STATE SERVICE 21/tcp open ftp 22/tcp open ssh 631/tcp open ipp 6000/tcp open X11 …

19 Network Scanning19 Stealth TCP scanning methods Questi metodi sfruttano alcune lacune del protocollo TCP/IP, provocate inviando pacchetti con configurazioni di bit non standard. Queste tecniche non mappano le porte aperte in modo accurato, però lavorano in modo nascosto e difficilmente possono essere rilevati e loggati.

20 Network Scanning20 Inverse TCP flag scanning Questo tipo di scanning viene chiamato inverse in quanto rispondono solo le porte chiuse di un sistema Vengono inviati dei pacchetti sonda con diversi flag settati, ad esempio: FIN probe, con il FIN TCP flag settato LXMAS probe con i FIN,URG,PUSH TCP flag settati NULL probe con nessun flag TCP settato

21 Network Scanning21 Inverse TCP flag scanning Ecco come avvengono le comunicazioni utilizzando questo metodo: Quando una porta è aperta Quando una porta è chiusa

22 Network Scanning22 Inverse TCP flag scanning - Nmap Nmap può effettuare un TCP flag portscan, utilizzando le opzioni: -sF per il FIN probe -sX per lXMAS Tree probe -sN per il NULL probe ESEMPIO: nmap -sF … Interesting ports on chaos ( ): (The 1668 ports scanned but not shown below are in state:closed) PORT STATE SERVICE 21/tcp open|filtered ftp 22/tcp open|filtered ssh 631/tcp open|filtered ipp 6000/tcp open|filtered X11 … Come vediamo in questo caso Nmap riesce anche a dirci se la porta in questione è open|filtered in quanto come visto in precedenza il sistema se una porta è aperta non risponde, ma lo stesso avviene se una porta è filtered e quindi inaccessibile

23 Network Scanning23 ACK flag probe scanning Un altro metodo consiste nellinviare dei pacchetti ACK ed analizzare il pacchetto RST ottenuto in risposta. Ci sono due parametri principali da osservare: Il time-to-live (ttl) E il parametro WINDOW (win) Questo sistema è molto difficile da rilevare, ma per funzionare sfrutta un bug nellimplementazione dello standard TCP/IP che non è più presente nei sistemi più aggiornati

24 Network Scanning24 ACK flag probe scanning Vengono spediti moltissimi pacchetti ACK verso porte TCP diverse In seguito vengono analizzati i pacchetti ricevuti, ad esempio: 1: host port 20: F:RST -> ttl: 70 win: 0 2: host port 21: F:RST -> ttl: 70 win: 0 3: host port 22: F:RST -> ttl: 40 win: 0 4: host port 23: F:RST -> ttl: 70 win: 0 In questo caso, analizzando il parametro ttl, si vede un tempo minore sulla porta 22, questo indica che tale porta è molto probabilmente aperta Oppure: 1: host port 20: F:RST -> ttl: 64 win: 0 2: host port 21: F:RST -> ttl: 64 win: 0 3: host port 22: F:RST -> ttl: 64 win: 512 4: host port 23: F:RST -> ttl: 64 win: 0 Il valore diverso da 0 nel parametro win in questo caso indica che la porta 22 è aperta

25 Network Scanning25 ACK flag probe scanning - Nmap Nmap può effettuare un ACK flag probe scanning, usando le opzioni: -sA per analizzare il parametro ttl -sW per analizzare il parametro win ESEMPIO: nmap -sW … Initiating Window Scan against [1663 ports] at 11:37 Interesting ports on : (The 1660 ports scanned but not shown below are in state: closed) PORT STATE SERVICE 21/tcp open ftp 23/tcp open telnet 111/tcp open rpcbind …

26 Network Scanning26 Third-party and spoofed TCP scanning methods Questi metodi utilizzano dei server vulnerabili per rimbalzare i propri messaggi. Sfruttando queste lacune si riesce a nascondere in modo efficiente la provenienza dello scanning della rete.

27 Network Scanning27 FTP bounce scanning Questa tecnica sfrutta delle lacune presenti sugli FTP server presenti su molte piattaforme, tra cui: FreeBSD and earlier HP-UX and earlier Solaris 2.6/SunOS 5.6 and earlier SunOS and earlier SCO OpenServer and earlier SCO UnixWare 2.1 and earlier IBM AIX 4.3 and earlier Caldera Linux 1.2 and earlier Red Hat Linux 4.2 and earlier Slackware 3.3 and earlier Any Linux distribution running WU-FTP BETA-16 or earlier

28 Network Scanning28 FTP bounce scanning Ecco come avviene un FTP bounce scan: Ci si collega alla porta di controllo del server FTP vulnerabile (porta 21), entrando in modo passivo, e forzando il server a utilizzare DTP (Data Transfer Process) ad una specifica porta di uno specifico host: QUOTE PASV 227 Entering Passive Mode (64,12,168,246,56,185) Si lancia il comando PORT passandogli come parametri la porta TCP di uno specifico host (ad esempio per lindirizzo , porta 23): PORT 144,51,17,230,0, PORT command successful In seguito viene lanciato un comando LIS. Il server FTP quindi prova a connettersi alla porta specificata (nellhost specificato) LIST 150 Opening ASCII mode data connection for file list 226 Transfer complete. se si riceve un messaggio 226 allora la porta è aperta, altrimenti se si riceve un 425, la porta è chiusa LIST 425 Can't build data connection: Connection refused

29 Network Scanning29 FTP bounce scanning - Nmap - Nmap può effettuare lFTP bounce scanning, utilizzando le opzioni –P0 e –b Ecco la sintassi per la chiamata: nmap -P0 -b

30 Network Scanning30 IP ID header scanning Conosciuto anche come (idle o dumb scanning) Sfrutta alcune peculiarità presenti nello stack TCP/IP di molti sistemi operativi vengono coinvolti 3 host: Lhost da cui lo scan è lanciato Lhost target Uno zombie o idle host Si possono sfruttare più zombie per ridurre il rischio di essere scovati

31 Network Scanning31 IP ID header scanning

32 Network Scanning32 IP ID header scanning - Nmap - Nmap può effettuare lIP ID header scanning attraverso lopzione -sI attraverso questa sintassi : -sI ESEMPIO # nmap -P0 -sI … Idlescan using zombie ; Class: Incremental Interesting ports on ( ): (The 1582 ports scanned but not shown below are in state: closed) Port State Service 25/tcp open smtp 53/tcp open domain 80/tcp open http 88/tcp open kerberos-sec 135/tcp open loc-srv 139/tcp open netbios-ssn 389/tcp open ldap 443/tcp open https 445/tcp open microsoft-ds 464/tcp open kpasswd5 593/tcp open http-rpc-epmap 636/tcp open ldapssl 1026/tcp open LSA-or-nterm 1029/tcp open ms-lsa 1033/tcp open netinfo 3268/tcp open globalcatLDAP 3269/tcp open globalcatLDAPssl 3372/tcp open msdtc 3389/tcp open ms-term-serv Nmap run completed -- 1 IP address (1 host up)

33 Network Scanning33 UDP port scanning Il protocollo UDP, consente di stabilire quali porte possono essere aperte in un host, in soli due modi: Inviando pacchetti UDP probe a tutte le porte UDP di un host (65535), e aspettando i messaggi ICMP destination port unreachable Oppure usando degli specifici client per servizi UDP e controllando se ci sono delle risposte da degli host (che in caso positivo possiedono il servizio) La maggior parte dei firewall però consente di filtrare i messaggi ICMP, da e per gli host protetti, questo rende difficile capire quali servizi UDP sono accessibili, attraverso un semplice UDP port scanning

34 Network Scanning34 UDP port scanning Ecco come avvengono le comunicazioni: Quando una porta è aperta Quando una porta è chiusa

35 Network Scanning35 UDP port scanning - Nmap - Nmap può effettuare lUDP port scanning, utilizzando lopzione -sU ESEMPIO nmap -sU … Interesting ports on ( ): (The 1453 ports scanned but not shown below are in state: closed) Port State Service 135/udp open loc-srv 137/udp open netbios-ns 138/udp open netbios-dgm 445/udp open microsoft-ds 500/udp open isakmp 3456/udp open vat …

36 Network Scanning36 Fingerprinting Ogni sistema operativo possiede una propria interpretazione degli standard del protocollo IP Analizzando le risposte ottenute, inviando alcuni pacchetti TCP ed UDP ad un host remoto, si può determinare il sistema operativo presente Nmap ad esempio compara i risultati ottenuti con il suo database, contenente oltre 1500 SO, e ne visualizza i dettagli se trova riscontri

37 Network Scanning37 Fingerprinting - Nmap - Nmap effettua il fingerprinting utilizzando lopzione –O, contemporaneamente ad una scansione ESEMPIO nmap -sS -O … Interesting ports on cartman ( ): (The 1524 ports scanned but not shown below are in state: closed) Port State Service 25/tcp open smtp 53/tcp open domain 8080/tcp open http-proxy Remote OS guesses: Windows 2000 RC1 through final release …

38 Network Scanning38 Service e Version Detection Si possono sfruttare i messaggi ricevuti in risposta da porte aperte in un host target, oltre che per la determinazione del SO, anche per altre funzionalità avanzate Nmap, ad esempio, è in grado di analizzare i messaggi ottenuti da una porta di un host e confrontarli con un suo database interno con oltre 2200 servizi

39 Network Scanning39 Service e Version Detection Questa funzionalità diventa di fondamentale importanza per un amministratore di sistema. Infatti conoscendo queste informazioni, e confrontandole con opportuni database, si può determinare a quali bugs è vulnerabile il server. Purtroppo lo stesso procedimento può essere effettuato da utenti malintenzionati che possono sfruttare tali bugs per controllare servizi e dati dellhost target.

40 Network Scanning40 Service e Version Detection Per attivare questa opzione in nmap si possono utilizzare le opzioni -sV per Version Detection -A per abilitare contemporaneamente sia OS Detection che Version Detection ESEMPIO nmap -A scanme.nmap.org Starting nmap ( ) Interesting ports on scanme.nmap.org ( ): (The 1663 ports scanned but not shown below are in state: filtered) PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 3.9p1 (protocol 1.99) 53/tcp open domain 70/tcp closed gopher 80/tcp open http Apache httpd ((Fedora)) 113/tcp closed auth Device type: general purpose Running: Linux 2.4.X|2.5.X|2.6.X OS details: Linux , Linux Uptime days (since Thu Jul 21 03:38: )...

41 Network Scanning41 riferimenti C. McNab, Network Security Assessment – OREILLY chap. 4 pp


Scaricare ppt "Network Scanning Laboratorio di amministrazione di sistema Cappellazzo Pietro, 809652 A.A. 2006/07."

Presentazioni simili


Annunci Google