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