Reti di Comunicazione e Internet - Belluzzi-Fioravanti · Reti di Comunicazione e Internet...
Transcript of Reti di Comunicazione e Internet - Belluzzi-Fioravanti · Reti di Comunicazione e Internet...
Reti di Comunicazione e Internet
Laboratorio 6. Wireshark e Protocolli Applicativi
Politecnico di Milano
Dipartimento di Elettronica e Informazione
Reti di Comunicazione e Internet
2 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Agenda della lezione
Wireshark
Protocolli applicativi:
File Transfer Protocol (FTP)
Simple Mail Transfer Protocol (SMTP)
Post Office Protocol (POP)
Reti di Comunicazione e Internet
3 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Agenda: Wireshark
Laboratorio 6. Protocolli Applicativi e Wireshark
Reti di Comunicazione e Internet
4 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Packet sniffing
I pacchetti seguono normalmente il loro percorso nel nodo (routing, filtraggio, forwarding), ma vengono “osservati” da un tool di sniffing
I pacchetti sono visualizzati completamente dal tool di sniffing, con gli header di tutti i livelli ed il payload
È possibile compiere elaborazioni di vario tipo sui pacchetti, per raccogliere statistiche, ottenere informazioni....
Reti di Comunicazione e Internet
5 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Wireshark
È uno dei tool più comodi per sniffare pacchetti in rete
Contiene strumenti avanzati di analisi e filtraggio
È un tool multipiattaforma (Window, Linux, Mac) ed è liberamente scaricabile: http://www.wireshark.org/
Necessita dei permessi di root/Administrator per poter effettuare delle catture di pacchetti
Nella versione senza permessi, può però essere usato per analizzare catture già effettuate
Reti di Comunicazione e Internet
6 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Interfaccia di Wireshark
Reti di Comunicazione e Internet
7 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Alcune funzionalità utili
Filtri sui pacchetti: permette di creare filtri per vedere solo determinati pacchetti. Il filtraggio si può fare in base ai diversi campi degli header, o ai diversi protocolli
Follow TCP Stream: è possibile, selezionando un pacchetto TCP, chiedere a Wireshark di seguire il flusso TCP, concatenando i pacchetti e mostrando solo i payload. (ad es., seguite un flusso HTTP...)
Analisi degli Header: è possibile, per ogni pacchetto, effettuare analisi dettagliate degli header, aprendoli e vedendone il contenuto in formato esadecimale e formattato dalla GUI
Statistiche: è possibile ottenere delle statistiche sui flussi e diagrammi temporali
Reti di Comunicazione e Internet
8 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Filtri sui pacchetti e Follow TCP stream
Reti di Comunicazione e Internet
9 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Analisi degli header
Reti di Comunicazione e Internet
11 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Esercizi 1/2
Sul sito web del corso si trovano delle catture già fatte, analizzabili con
Wireshark, aprirle e verificare gli scambi di pacchetti dei vari protocolli:
HTTP, FTP, POP, SMTP
Cattura HTTP 1:
Quali client sono stati impiegati? Quante richieste di pagine web sono state fatte?
In tutti i casi è possibile visualizzare la pagina completa di tutte le parti?
Catttura HTTP 2:
Qual è lo Username e la password di accesso alla zona riservata del sito?
Che errore c'è nella struttura del sito web? (suggerimento: il web server risponde
negativamente ad una richiesta...)
Cattura FTP:
A che porta del server il client si è connesso per ricevere il file server.png?
Reti di Comunicazione e Internet
12 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Esercizi 2/2
Cattura POP 1:
Che client di posta è stato usato per inviare la mail?
Cattura POP 2:
Che tipo di encoding è usato per l'allegato?
Catture SMTP:
Che differenza c'è tra la cattura SMTP 1 e 2?
Reti di Comunicazione e Internet
13 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Agenda: Protocolli applicativi
Laboratorio 6. Protocolli Applicativi e Wireshark
Reti di Comunicazione e Internet
14 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
HTTP
FTP
SMTP
POP3
Protocolli Applicativi
Reti di Comunicazione e Internet
15 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Agenda: File Transfer Protocol
Laboratorio 6. Protocolli Applicativi e Wireshark
Reti di Comunicazione e Internet
16 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Il File Transfer Protocol (FTP) è un protocollo di condivisione e trasmissione di file tra host
RFC 959
Protocollo Client-Server
Completamente testuale
Opera direttamente sul filesystem del sistema
Connessione di controllo: porta 21
Generalità
Reti di Comunicazione e Internet
17 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Comandi necessari a comunicare via FTP:
Comandi FTP (1)
Connessione al server sulla porta 21 (connessione di controllo):
myhost$ telnet 192.168.0.98 21
Autenticazione:
USER <nomeutente>
PASS <password>
QUIT
Lista più completa di comandi: http://www.nsftools.com/tips/RawFTP.htm
HELP
STAT < NULL | nome_file>
SYST
Informazioni:
Reti di Comunicazione e Internet
18 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Comandi FTP (2) Movimenti:
PWD
CWD
LIST
QUIT
* IP del client a cui connettersi: a1.a2.a3.a4 - PORT a cui connettersi: p1*256 + p2
MODE <Stream | Block |Compressed>
PASV
PORT a1, a2, a3, a4, p1, p2 *
Setup:
Manipolazione:
RETR
STOR
DELE
Modalità di impiego:
●Protocollo con 2 connessioni (2 telnet)
●I comandi vengono dati su connessione di controllo
●I trasferimenti avvengono sulla connessione dati
Reti di Comunicazione e Internet
19 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Sessione d’esempio
$ telnet 192.168.0.98 21
USER Anonymous
PASS
PASV
227 Entering Passive Mode
(192,168,0,98,46,204)
CWD /data $telnet 192.168.0.98 11980
Shell 1 Shell 2
Server
46*256+204 = 11980
LIST -rw-r--r-- 1 620 620 826322 Mar 26 13:03 gnome_is_people.png
-rw-r--r-- 1 620 620 35147 Mar 26 13:03 gpl.txt
PASV
227 Entering Passive Mode
(192,168,0,98,420,21)
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
[...]
$telnet 192.168.0.98 107541
RETR gpl.txt
Reti di Comunicazione e Internet
20 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Loggarsi sul server FTP messo a disposizione in laboratorio
(l'indirizzo di tale server verrà fornito durante il laboratorio USER anonymous, PASS <anything> )
Provare a scaricare un'immagine
Provare l'altro metodo di connessione, PORT (con p1=128, p2= 204): funziona?
(per aprire una porta TCP si può usare il tool netcat nel seguente modo: “nc -l PORT” oppure ““nc -l -p PORT”)
Esercizi
Reti di Comunicazione e Internet
21 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Agenda: Simple Mail Transfer Protocol
Laboratorio 6. Protocolli Applicativi e Wireshark
Reti di Comunicazione e Internet
22 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Il Simple Mail Transfer Protocol (SMTP) è un protocollo di trasmissione di email
RFC 821 – Specifica base
Protocollo testuale
Inizialmente permetteva solo il trasferimento ASCII, è stato successivamente esteso per trasmettere informazioni binarie (estensione MIME, 8BITMIME,...)
Utilizza la porta 25
SMTP originariamente non prevede autenticazione:
SMTP-AUTH / Internet Mail 2000
IETF Anti-Spam Research Group
Generalità (1)
Reti di Comunicazione e Internet
23 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Generalità (2)
Sender Domain Receiver Domain
Relaying SMTP Destination SMTP
SENDER RECEIVER
Reti di Comunicazione e Internet
24 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Voglio inviare una mail ad un amico del dominio receivers.com
1) Mi connetto al server SMTP del dominio receivers.com
2) Dichiaro (nel mittente della mail) il dominio da cui scrivo: senders.com
3) Scrivo la mail e la deposito nella “cartella” di [email protected]
Non mi è stato chiesto USER o PASS!!! (no autenticazione)
I gestori del dominio receivers.com tuttavia possono operare alcuni controlli, ad esempio bannando degli indirizzi IP o loggando ogni accesso
I provider offrono server SMTP che si occupano delle consegne alla mailbox del destinatario al posto nostro (gestendo il caso di server occupato, momenti di down,...)
Generalità (3)
Reti di Comunicazione e Internet
25 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Comandi di uso comune:
Comandi SMTP
HELO <domain>
MAIL FROM:<reverse-path>
RCPT TO:<forward-path>
DATA
RSET
VRFY <string>
HELP [<string>]
QUIT
I comandi sono Case Insensitive, tranne nel reverse e forward path, che sono Sensitive
Reti di Comunicazione e Internet
26 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Sessione d’esempio
albertux@antlab101:~$ telnet 192.168.0.98 25
220 www.labrci.lan ESMTP Postfix (Debian/GNU)
HELO studente.it
250 www.labrci.lan
MAIL FROM:<[email protected]>
250 2.1.0 Ok
RCPT TO:<[email protected]>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Subject: Verifica SMTP
From: [email protected]
Buongiorno
Questa mail serve a dimostrare che ho imparato SMTP.
.
250 2.0.0 Ok: queued as F41CC9F6EE
QUIT
221 2.0.0 Bye
Reti di Comunicazione e Internet
27 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Inviare una mail da un mittente falso ([email protected]) all'indirizzo email labrci<numeroPC>@labrci.lan
(l'IP del server SMTP verrà comunicato a lezione)
(numeroPC è di tre cifre, ad es: 001)
Inviare, sempre allo stesso indirizzo mail, altre 2 mail usando mittenti e subject diversi (serve per un esercizio successivo)
[A CASA] provare a mandare delle mail al proprio indirizzo email da [email protected]
Esercizi
Reti di Comunicazione e Internet
28 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Agenda: Post Office Protocol
Laboratorio 6. Protocolli Applicativi e Wireshark
Reti di Comunicazione e Internet
29 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Il Post Office Protocol (detto anche POP) è un protocollo di accesso alla mailbox
RFC 1939
Protocollo testuale
Protocollo con Autenticazione
Utilizza la porta 110
Non è cifrato, per cui user e password passano in chiaro
Generalità
Reti di Comunicazione e Internet
30 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Comandi
Login in chiaro:
USER <username>
PASS <password>
●STAT
info sullo stato mbox
●LIST
elenca il # messaggi
●RETR n
leggi messaggio n
●DELE n
cancella messaggio n
●RSET
annulla cancellazioni
●QUIT
esce
●TOP n
mostra gli header della mail
Operazioni comuni:
-ERR
+OK
Risposte del server:
Reti di Comunicazione e Internet
31 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Sessione d’esempio albertux@antlab101:~$ telnet 192.168.0.98 110 +OK Dovecot ready.
USER labrci001
+OK
PASS labrci001
+OK Logged in.
LIST +OK 1 messages:
1 598
.
RETR 1 +OK 598 octets
Return-Path: <[email protected]>
X-Original-To: [email protected]
Delivered-To: [email protected]
Received: from studente.it (ip254 [192.168.0.254])
by www.labrci.lan (Postfix) with SMTP id F41CC9F6EE
for <[email protected]>; Wed, 26 Mar 2008 13:09:43 +0100 (CET)
Message-Id: <[email protected]>
Date: Wed, 26 Mar 2008 13:09:43 +0100 (CET)
From: [email protected]
To: undisclosed-recipients:;
Subject: Verifica SMTP
From: [email protected]
Buongiorno
Questa mail serve a dimostrare che ho imparato SMTP.
.
DELE 1 +OK Marked to be deleted.
QUIT +OK Logging out, messages deleted.
Reti di Comunicazione e Internet
32 21/1/2013
Lab 6: Wireshark e Protocolli Applicativi
Collegarsi al server POP della LAN dell'aula (l'IP è lo stesso dell'SMTP server, comunicato a lezione)
Username labrci<numeroPC>, password labrci<numeroPC>
Scaricare la mail precedentemente inviata dall'indirizzo [email protected]
Con il comando TOP verificare gli header della mail
Cancellare le 3 mail inviate in precedenza
Annullare la cancellazione con il comando RSET
Cancellarle di nuovo, definitivamente
Esercizi