Internet:: i servizi e i protocolli di VII livello Client/Server

Transcript

Internet:: i servizi e i protocolli di VII livello Client/Server
Operatore Informatico Giuridico
Informatica Giuridica
A.A 2005/2006
I Semestre
Internet::
i servizi e i protocolli di VII livello
prof. Monica Palmirani
Client/Server
ƒ
ƒ
ƒ
ƒ
ƒ
Gli strati applicativi che si poggiano sul TCP/IP utilizzano quasi
sempre un’architettura client/server
Per ogni servizio o applicazione vi è attualmente un programma
lato server e un programma lato client
Posta elettronica: server di posta + client di posta (Outlook,
Mozzilla, Eudora, ecc.)
Una volta il servizio di posta si utilizzava direttamente sul server
Esempio di comunicazione HTTP client/server
© Palmirani
1
Concetto di porta
ƒ I server remoti dialogano con altri nodi a mediante le porte
logiche – porte TCP o UDP ossia servizi che si appoggiano al
protocollo TCP o UDP
ƒ L’amministratore di rete attiva o disattiva le porte logiche dei
ƒ
ƒ
ƒ
ƒ
servizi che desidera mantenere “abilitati”
Le porte aperte sono in uno stato di “ascolto” e sono recettive
ad ogni segnale di ingresso
Portscan – strumento software che verifica lo stato delle porte
e quindi l’attivazione o meno di certi servizi
Giuridicamente: l’uso di portscan può essere considerato un
attacco informatico art. 615 ter c.p.
Lista delle porte ufficiali:
http://www.iana.org/assignments/port-numbers
© Palmirani
Tipi di porte
Vi sono tre tipi di porte logiche:
ƒ le Well Known Ports dal numero 0 al 1023
ƒ 80/tcp HTTP HyperText Transfer Protocol (WWW)
ƒ le Registered Ports dal 1024 al 49151
ƒ 8080/tcp HTTP
ƒ le Dynamic and/or Private Ports dal 49152 al 65535
ƒ 4662/tcp eMule, porta di default usato da eMule
ƒ 4672/udp eMule, porta di default usato da eMule
© Palmirani
2
© Palmirani
Due diversi tipi di servizio
ƒ Protocolli di applicazione rivolta agli utenti: forniscono
un servizio diretto agli utenti finali (telnet, FTP,
SMTP, NNTP, HTTP, ICR, ecc.)
ƒ Protocolli di servizio: forniscono servizi di supporto
alle applicazioni utente e alla comunicazione (SNMP,
DNS, ecc.)
© Palmirani
3
I Servizi (i)
ƒ Telnet - accesso ad un host in remoto
ƒ telnet <numero ip o nome della macchina>
ƒ Porta 23
ƒ FTP - file transfert protocol
ƒ FTP <numero ip o nome della macchina>
ƒ get nomefile
ƒ put nomefile
ƒ FTP anonymous
ƒ Porta 20-21
© Palmirani
FTP
ƒ FTP - file transfert protocol - port 20-21
ƒ FTP <numero ip o nome della macchina>
ƒ get nomefile - per prelevare un file
ƒ put nomefile – per inserire un file
ƒ dir - per avere la lista dei file in una directory
ƒ open – per poter aprire una nuova sessione ftp
ƒ disconnect – per disconnettersi
ƒ quit - per sconnettersi definitivamente
ƒ FTP anonymous:
ƒ login: anonymous
ƒ password:guest oppure un indirizzo di posta elettronica
ƒ Modalità di accesso: via browser web, connessione con
finestra dos, tool interattivo grafico
© Palmirani
4
FTP via comandi
Apertura di una
connessione ftp
Login: anonymous
Password: guest
Lista del contenuto
della directory con il
comando LS e
navigazione con il
comando CD
© Palmirani
FTP via comandi
lista dei file
nella dir
prelevamento del file
README
file correttamente
scaricato
© Palmirani
chiusura della
sessione
sconnessione dal
server ftp
5
E-Mail
Tradizionalmente si hanno due protocolli:
ƒ SMTP (Symple mail transfer protocol) - trasferisce i messaggi da un
host all’altro (centro di smistamento)
porta 25
ƒ POP (Post Office Protocol) - trasferisce i messaggi al destinatario
(postino)
porta 110
ƒ L’evoluzione ha aggiunto nuovi protocolli
ƒ IMAP – protocollo che consente la gestione della casella di posta in
remoto. Si usa quando non si ha una postazione fissa per evitare di
avere molte caselle di posta sparse in diversi PC
ƒ HTTP – posta via web
ƒ MIME – protocollo sovrapposto all’SMTP per inviare contenuti o
allegati multimediali
ƒ
© Palmirani
E-mail
ƒ Il servizio di e-mail si basa su due protocolli: SMTP, POP
ƒ SMTP port 25 (Symple mail transfer protocol) - trasferisce i
messaggi da un host all’altro (centro di smistamento) – protocollo
di spedizione
ƒ POP port 110 (Post Office Protocol) - trasferisce i messaggi al
destinatario (postino) – protocollo di ricezione
ƒ MIME – protocollo per gestire gli allegati multimediali ed inviarli
all’SMTP
Sever di B
SMTP
SMTP
Client A
Client B
POP
Sever di A
POP
SMTP
© Palmirani
6
Come è fatto un messaggio (i)
Fine
msg
Caratteri
di controllo
Messaggio
Dest. Mit. Inizio
msg.
ƒ Nel messaggio c’è sempre un header e una parte di testo che
costituisce il vero messaggio
ƒ L’header contiene informazioni preziose sul percorso fatto
dal messaggio e tramite questo possiamo verificare se il
messaggio è vero o falso
© Palmirani
Header di un messaggio
Return-Path: <[email protected]>
Received: from start.com.au ([210.0.210.118])
by ultra.cirfid.unibo.it (8.11.6+Sun/8.11.6) with SMTP id g3DAEEj20022;
Sat, 13 Apr 2002 12:14:15 +0200 (MEST)
Received: from 30.98.199.115 ([30.98.199.115]) by mta85.snfc21.pibi.net with
NNFMP; Fri, 12 Apr 2002 14:26:31 +0700
Received: from unknown (HELO rly-xw01.otpalo.com) (52.216.249.212)
by rly-yk04.aolmd.com with smtp; 12 Apr 2002 21:23:04 +0800
Received: from unknown (HELO symail.kustanai.co.kr) (39.206.157.47)
by rly-xl04.mx.aolmd.com with local; Sat, 13 Apr 2002 05:19:37 +0500
Reply-To: <[email protected]>
Message-ID: <015d08d07b8c$5526b4d4$3ad25dc6@vfnlio>
From: <[email protected]>
To: User
Subject: latest domain news
Date: Sat, 13 Apr 2002 11:26:13 -0100
MiME-Version: 1.0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: eGroups Message Poster
Importance: Normal
X-UIDL: 6g##!j;)"!0T2!!@1,"!
© Palmirani
7
Principali comandi dell’SMTP
1. Telent nome_server_posta 25 (si apre una connessione telnet)
2. VRFY pippo oppure EXPN pippo (si verifica l’indirizzo
esatto del soggetto da attaccare)
3.
4.
5.
6.
HELO <nome> (identifica l’utente che accede al servizio SMPT)
MAIL FROM: <indirizzo mittente> (indica il mittente)
RCPT TO: <indirizzo destinatario> (destinatario Recipient)
DATA
inizia il testo del messaggio, si termina tale
sessione con il “.”
7. QUIT (termina la sessione SMTP corrente)
E’ possibile tramite i comandi di telnet programmare la sequenza di istruzioni
SMPT per simulare la costruzione di header o “inquinare” header veri
© Palmirani
Comportamenti scorretti
con l’e-mail
ƒ flamming - usare toni polemici, critici, logorroici, acidi
approfittando del mascheramento indotto dal mezzo
tecnologico
ƒ boombing - invio di una mole massiccia di posta ad un
server o ad una casella e-mail provocando la caduta del
servizio di e-mail o del server o della casella in oggetto
ƒ invio di virus
ƒ inivio di e-mail con identificativi falsi - scrivere e-mail
falsificando il proprio identificativo, indirizzo di mittente, IP
© Palmirani
8
Comportamenti scorretti con
l’e-mail
ƒ Spamming: (spam -SPiced hAM)
ƒ invio di messaggi non sollecitati di natura prevalentemente
commerciale mediante telefono, fax, sms e-mail
ƒ inviati in grandi quantità, reiterati, da mittente spesso sconosciuto,
mascherato, falsificato.
ƒ Junk: invio di posta non sollecitata in genere
ƒ Unsolicited Bulk E-mail - UBE
ƒ Unsolicited Commercial E-mail - UCE
ƒ http://www.templetons.com/brad/spamreact.html -
DEC 3 maggio 1978 ARPANET directory
ƒ http://www.detritus.org/spam/skit.html 31 marzo 1993 la scenetta di “Monthy Pyton”
ƒ http://www.spam.com/ - la vera SPAM
© Palmirani
Riferimenti giuridici
ƒ http://www.spamlaws.com/
ƒ http://www.garanteprivacy.it/garante/doc.jsp?ID=29840
provvedimento in materia di spamming del Garante
ƒ http://www.corriere.it/Primo_Piano/Cronache/2004/06_Giu
gno/24/spamming.shtml
- notizia della sentenza del giudice di pace di Napoli
ƒ http://www.noiconsumatori.it/
- facsimile di ricorso per spam
ƒ Opt-in e Opt-out : due diversi approcci
ƒ Opt-in: inviare solo a chi ha fornito preventivo consenso
ƒ Opt-out: il destinatario deve agire al fine di essere
© Palmirani
“espulso” dalle liste di invio
9
Opt-in e Opt-out
ƒ Opt-in e Opt-out : due diversi approcci di regolamentare lo
spamming in genere
ƒ Opt-in:
ƒ consentito lo spamming solo a chi ha fornito preventivo consenso
ƒ Approccio Europeo
ƒ tutelante della persona
ƒ tutela a priori
ƒ Opt-out:
ƒ consentito lo spamming sempre fino a disdetta dell’interessato
ƒ il destinatario deve agire al fine di essere “espulso” dalle liste di
invio
ƒ Approccio americano, coreano, giapponese
ƒ tutela il libero mercato, la concorrenza fra imprese
ƒ tutela a posteriori
© Palmirani
NNTP Network News Transfer Protocol –
Newsgroup – porta 119
ƒ esiste una gerarchia mondiale di newsgroup piuttosto complessa
suddivisa per nazionalità e/o per argomenti - circa 20.000 forum
ƒ la gerarchia ufficiale dei newsgroup è gestita da USENET
ƒ ogni ramo è poi suddiviso in sottorami per sub-argomenti
ƒ a parte le suddivisioni per nazione che iniziano con la sigla della nazione
stessa (it., fr., etc.) esistono storicamente nove gerarchie tematiche
ufficiali mondiali:
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
alt
comp
news
rec
sci
talk
alternativi
- biz
affari e commercio
computer
- misc
miscellanea
comunicazioni su Usenet
giochi, hobbies, attività ricreative
scienze
- soc
società
discussioni
ƒ possiamo identificare tre tipi di forum:
ƒ liberi
ƒ moderati - esiste un moderatore che può censurare il forum
ƒ riservati - ad accesso limitato
ƒ www.usenet.net
© Palmirani
10
HTTP
- Hypertext Transfer Protocol
ƒ Web - il servizio web si basa sulla comunicazione fra un client
(browser) e un server WWW il quale contiene dei contenuti
informativi, dei servizi, delle applicazioni.
ƒ Tale comunicazione ha il suo fondamento nei seguenti tre
elementi:
ƒ HTTP - Hypertext Transfer Protocol - protocollo di
comunicazione fra client e server WWW – porta 80
ƒ URI - Uniform Resource Identifier - indirizzo della risorsa
da richiedere in rete:
ƒ URN – Uniform Resource Name
ƒ URL – Universal Resource Locator
ƒ HTML - Hypertext Markup Language - linguaggio di
presentazione dei contenuti sul browser
© Palmirani
Fasi HTTP
1.
2.
3.
4.
5.
6.
ƒ
ƒ
ƒ
© Palmirani
CONNESSIONE : Il client chiede al server di attivare una
connessione TCP-IP
Si apre quindi lo strato di comunicazione fra client e server
per l’apertura di una connessione TCP/IP (handshake)
RICHIESTA DOCUMENTO : una volta attivata la connessione
TCP/IP il client invia la richiesta di un documento
ELABORAZIONE RICHIESTA: il server elabora la richiesta
RISPOSTA : il server risponde con un messaggio in linguaggio
HTML
SCONNESSIONE : il server dopo la spedizione del documento
si sconnette. La connessione TCP/IP si interrompe.
HTTP è un protocollo “stateless” ossia senza memoria di stato
Ad ogni richiesta si attiva una connessione diversa di TCP/IP -connessione
non persistente
La versione HTTP 1.1 risulta essere persistente – rimane “attaccata”
11
I cookie (i)
ƒ Il cookie è il meccanismo usato da alcuni server Web per
tenere traccia degli utenti che hanno acceduto al sito
ƒ Il server scrive sul computer dell’utente un file con
informazioni relative alla navigazione più un codice
identificativo
ƒ La volta successiva il server può leggere dal cookie le
informazioni che interessano al sito e sapere a chi sono
riferite: per esempio può personalizzare la presentazione
con un messaggio del tipo:
“Benvenuto Mario Rossi è la terza volta che ci visita”
© Palmirani
I cookie (ii)
ƒ I cookies possono quindi identificare ed autenticare
l’identità del visitatore
ƒ Questo meccanismo è usato soprattutto per identificare
l’utente di volta in volta e per raccogliere dati statistici e
comportamentali relativi all’utente: numero di volte che
accede al sito, voci scelte, preferenze, etc.
ƒ Si usa il cookie e non l’IP perché spesso l’utente non è
identificabile attraverso l’IP in quanto usa un IP dinamico e
non fisso oppure da uno stesso IP si collegano più utenti
© Palmirani
12
Come funziona un cookie
ƒ La prima volta che l’utente si collega ad un server questo
aggiunge un file sulla macchina dell’utente contenente un
numero identificativo univoco che identifica l’utente
stesso
ƒ La volta successiva che l’utente si collega, il server
rintraccia dal file il numero di identificativo (ID) e riesce
ad associare così l’utente
ƒ Spesso nei siti vengono proposti banner pubblicitari in
linea con le scelte che stiamo compiendo sul sito perché
all’interno dei cookie si possono memorizzare le nostre
preferenze
© Palmirani
Come è fatto un cookie
ƒ Apache151.26.160.113.306251016014520755iol.it/063331
840029646475134389648029477495*IOLADVIDA6116553
5iol.it/026036633630211759142189648029477495*IOLAD
VLCTCLP0099iol.it/03092983040294952609434489602947
8365*
Un cookie può violare la legge sulla privacy:
ƒ fornendo o vendendo informazioni sulle abitudini
dell’utente
ƒ creando occasioni in cui le informazioni sono
palesate per errore a terzi
ƒ monitorando senza adeguati premessi le abitudini
degli utenti
© Palmirani
13
Cookeis buoni e cattivi
ƒ Buoni
ƒ si chiudono nella sessione lasciando il PC pulito
ƒ agevolano l’applicazione nel passaggio di dati
ƒ fanno cache di pagine
ƒ aiutano il passaggio all’interno di diverse
applicazioni collegate
ƒ Cattivi
ƒ profilano senza consenso
ƒ utilizzano il profilo per far comparire banner,
spam, notizie
ƒ inviano i dati personali a diversi siti non noti
© Palmirani
Come sapere che vi sono cookies
© Palmirani
14
Come proteggersi
© Palmirani
Riferimenti
ƒ Kurose, Ross, Internet e Rete, MacGraw-Hill nuova
edizione
ƒ Cap 2 fino al 2.5 incluso
© Palmirani
15