Telecommunication Manager 2005-2007 Information Technology Security Solution

UTILIZZO DELLE TECNOLOGIE DI SERVER VIRTUALIZATION

NELLE PIATTAFORME DI GESTIONE DELLA SICUREZZA

Versione e data template DATA Giuseppe Guadalupi PAGINA 1/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Indice

INDICE...... 2 INDICE DELLE FIGURE...... 4 1. PREFAZIONE ...... 6 2. L’AZIENDA...... 7 2.1 - PROFILO ...... 7 2.2 - TELECOM ITALIA IN BREVE ...... 7 2.2.1 - I numeri del Gruppo (al 31 marzo 2007)...... 8 2.2.2 - I risultati economici e finanziari (al 31 dicembre 2006) ...... 9 2.2.3 - Composizione azionariato (al 31 dicembre 2006)...... 10 2.3 - ASSETTO ORGANIZZATIVO ...... 10 2.3.1 - Funzioni Centrali...... 11 2.3.2 - Operations e Business Unit...... 12 2.4 - I MECCANISMI DI GOVERNO E DI INTEGRAZIONE DEL GRUPPO ...... 12 2.5 - COMITATI DI GRUPPO ...... 12 3. ORGANIGRAMMA T.TI.SE.SS...... 14 4. ARGOMENTI TRATTATI...... 15 4.1 - FILE SHARING - P2P ...... 15 4.1.1 - eDonkey ...... 16 4.1.1.1 - I server ...... 16 4.1.1.2 - I client...... 16 4.1.1.3 - Il FileHash ...... 16 4.1.1.4 - I link eD2K ...... 16 4.1.2 - KAD ...... 17 4.1.2.1 - Network protocol ...... 17 4.1.2.2 - Routing Table ...... 17 4.1.2.3 - Contacts ...... 18 4.1.2.4 - Bootstrap...... 18 4.1.2.5 - Initial handshake...... 18 4.1.2.6 - Firewall check...... 19 4.1.2.7 - Find buddy...... 19 4.1.2.8 - Localizzare gli Oggetti...... 20 4.1.3 - Emule...... 22 4.1.3.1 - Come funzionano i normali programmi P2P...... 22 4.1.3.2 - Coda di upload...... 23 4.1.3.3 - Collezioni...... 23 4.1.3.4 - Commenti ...... 24 4.1.3.5 - Crediti...... 24 4.1.3.6 - Fonti A4AF...... 24 4.1.3.7 - I.C.H. e A.I.C.H...... 24 4.1.3.8 - Priorità di download...... 24 4.1.3.9 - Priorità di upload ...... 25 4.1.3.10 - ID:...... 25 4.1.3.11 - FIREWALLED:...... 26 4.1.4 - Offuscamento del Protocollo ...... 27 4.1.4.1 - Impostazioni ...... 27 4.1.4.2 - Interfaccia grafica ...... 28 4.2 - VMWARE ...... 29 4.2.1 - Soluzione delle problematiche IT...... 30 4.2.2 - Prodotti e tecnologie...... 31 4.2.3 - Concetti base ...... 33 4.2.3.1 - Software e procedure di admin ...... 35 4.2.3.2 - Resource variable...... 36 4.2.4 - Template SunSolaris 10 su x86...... 37 4.2.4.1 - Creazione nuova vmachine ...... 37 4.2.4.2 - Requisiti di sistema e configurazioni consigliate...... 37

Versione e data template DATA Giuseppe Guadalupi PAGINA 2/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.2.4.3 - Lista di controllo per l’installazione ...... 38 4.3 - NETWORK SECURITY MONITORING (NSM)...... 45 4.3.1 - Monitoring di connettività:...... 46 4.3.2 - Monitoring del Traffico: ...... 47 4.3.3 - SNMP: ...... 48 4.3.4 - Monitoring Remoto (RMON):...... 49 4.3.5 - Soluzioni ai problemi:...... 52 4.4 - MDM CISCO ...... 52 4.4.1 - Item Requirements ...... 55 4.4.2 - Installazione MDM ...... 56 4.5 - MAST ...... 57 4.6 - NTOP ...... 58 4.6.1 - Ambiente di collaudo ...... 59 4.6.2 - Descrizione blade ...... 60 4.6.3 - Packet Sniffer...... 61 4.6.4 - Packet Analyser ...... 62 4.6.5 - Report Engine...... 63 4.6.6 - Security Feature...... 64 4.6.7 - Servizi presenti sulla blade NTOP...... 65 4.6.7.1 - Procedure per la corretta configurazione della macchina:...... 65 4.6.7.2 - Comando di avvio ntop...... 65 4.7 - NFSEN ...... 65 4.7.1 - Installazione...... 67 4.7.1.1 - Master Config file...... 69 4.7.1.2 - Importare netflow esistenti...... 73 4.7.1.3 - Start-Stop NfSen...... 73 4.7.2 - Upgrading Nfsen...... 74 4.7.3 - Lavorare con Nfsen...... 76 4.7.3.1 - Views...... 76 4.7.3.2 - Profile ...... 76 4.7.4 - Navigation ...... 80 4.7.4.1 - Seleziona un time slot o un time window ...... 81 4.7.4.2 - Riassunto statistiche...... 83 4.7.4.3 - Graph Display Options ...... 84 4.7.4.4 - Netflow processing ...... 84 4.7.4.4.1 - Filter Syntax...... 85 4.7.4.4.2 - Options...... 87 4.7.4.4.3 - Default filteres ...... 88 4.7.5 - Bookmarks ...... 90 4.7.6 - Command line tool “nfsen”...... 91 4.7.7 - Plugins...... 92 4.7.7.1 - Installing Plugins ...... 92 4.7.7.2 - Writing Backend Plugin...... 93 4.7.7.3 - Testing backend plugin...... 95 4.7.7.4 - Writing Frontend Plugins...... 96 4.7.7.5 - Optional Modules ...... 97 5. CONCLUSIONI...... 99 6. GLOSSARIO ...... 100 7. RINGRAZIAMENTI ...... 110

Versione e data template DATA Giuseppe Guadalupi PAGINA 3/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Indice delle Figure

Figura 1 Azionariato...... 10 Figura 2 - TIS...... 14 Figura 3 - SE...... 14 Figura 4 - Bootstrap ...... 18 Figura 5 - Initial Handshake ...... 19 Figura 6 - Firewall check...... 19 Figura 7 - Find Buddy ...... 20 Figura 8 - Lookup iterative o recursion ...... 20 Figura 9 - Lookup paralleli iterative ...... 21 Figura 10 - Ricerca del nodo...... 21 Figura 11 - p2p vs ...... 23 Figura 13 - Commenti sui file ...... 24 Figura 14 - Priorità di Download...... 25 Figura 15 - Priorità di upload...... 25 Figura 16 - Banner controlli emule ...... 25 Figura 17 - Risultati Ricerca...... 27 Figura 18 - Offuscamento del protocollo ...... 28 Figura 19 - Interfaccia grafica ...... 28 Figura 20 - Offuscamento protocollo lato client ...... 29 Figura 21 - Finestra server...... 29 Figura 22 - Lista Server...... 29 Figura 23 - Suite per la gestione e l'ottimizzazione dei data center ...... 31 Figura 24 - Vmware ESX ...... 33 Figura 25 - VmwareClient 2.0...... 37 Figura 26 - Requisiti di sistema...... 37 Figura 27 - Informazioni per un'installazione iniziale ...... 39 Figura 28 - Requisiti Hw per l'MDM...... 53 Figura 29 - Requisiti SW per l’MDM ...... 55 Figura 30 - MAST...... 58 Figura 31 - Architettura Ntop...... 60 Figura 32 - Struttura delle Directory ...... 67 Figura 33 - Importare Netflow esistenti...... 73 Figura 34 - Tab Navigation...... 76 Figura 35 - Select Profile...... 77 Figura 36 - Nuovo Profilo Ntop...... 78 Figura 37 - Profilo creato...... 79 Figura 38 - Profilo cancellato ...... 79 Figura 39 - Conferma di profilo cancellato...... 79 Figura 40 - Navigation Display ...... 80 Figura 41 - Select time span ...... 80 Figura 42 - Controlli di tempo...... 81

Versione e data template DATA Giuseppe Guadalupi PAGINA 4/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 43 - Tstart e Tend ...... 81 Figura 44 - Selected time window ...... 82 Figura 45 - Tstart, Tstop...... 82 Figura 46 - Border of available Data...... 82 Figura 47 - Time Slot Statistiche ...... 83 Figura 48 - Disabled sources ' Downstream' and 'Peer’ ...... 83 Figura 49 - Line Graph...... 84 Figura 50 - Netflow processing...... 85 Figura 51 - List Options...... 87 Figura 52 - Statistic options...... 87 Figura 53 - Misure Netflow ...... 88 Figura 54 - Filtri di Default...... 89 Figura 55 - Bookmarks...... 90 Figura 56 - CLI...... 91 Figura 57 -Plugin...... 97

Versione e data template DATA Giuseppe Guadalupi PAGINA 5/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

1. Prefazione

Information and Communication Technology riguarda tutto ciò che studia le tecnologie usate per modificare le informazioni ed aiutare le comunicazioni. La continua crescita delle tecnologie e di nuovi sistemi pronti a soddisfare i bisogni delle aziende, fa si che ogni anno, molte risorse vengono scartate per l’acquisto di nuove, sempre più performanti e costose, impattando sia sull’economia dell’azienda che sul greening (livello ambientale). TELECOMITALIA – Information Technology Security Solution, ha pensato di risolvere questo problema, utilizzando tecnologie di server virtualization nella piattaforme di gestione della sicurezza. E’ così che nasce la collaborazione con il centro Elis, 6 mesi di stage nel quale mettere in pratica le competenze acquisite durante il corso “Telecommunication Manager” ed imparare quanto il più è possibile. Insieme al mio compagno di corso, Vittorio Monaco, ci siamo subito adoperati affinchè il periodo di stage potesse iniziare. In un primo momento, abbiamo avuto qualche difficoltà legata a problemi logistici e burocratici, del resto non è sempre facile ambientarsi alle nuove realtà, soprattutto quando si tratta di grosse aziende come telecom. Fabio Zamparelli, responsabile del team Security Solution, è il nostro referente. Dopo una prima fase di assessment, ci ha aiutato a capire la logica dell’azienda, i nostri “diritti/doveri” e cosa significa raggiungere determinati obiettivi. Marco Bellomo, dipendente della business-e, ci ha accolti nella sede di via di Valcannuta e ci ha affiancato e consigliato per tutto il periodo di stage. Successivamente, per stare più vicini al nostro referente, siamo stati trasferiti con i consulenti, nell’open space della sede centrale di via Degli Estensi, dove abbiamo incontrato diverse realtà aziendali (Accenture, Pride, Ascom, IBM..) che ci hanno spinto al confronto e al miglioramento continuo. Ovviamente le mansioni di uno stagista, non possono auspicare a ruoli di una certa importanza, in quanto gli apparati sono molto costosi ed eventuali errori in campo, potrebbero compromettere, nel migliore dei casi il funzionamento di alcuni dispositivi, nel peggiore disservizi sulla rete, per cui sulle spalle dei referenti si aggiunderebbero ulteriori responsabilità. Per fortuna, le tematiche da noi affrontate: sicurezza e virtualizzazione, hanno fatto si che il nostro lavoro potesse concretizzarsi in installazioni di piattaforme su macchine virtuali, con relativo studio, test ed analisi. Tre sono le macroaree da noi coperte: File Sharing , Virtualizzazione e Network Monitoring . Per quanto riguarda il file sharing, il nostro obiettivo principale è studiare i protocolli e i modi di trasferimento dei file. Telecom, come anche altri enti erogatori di servizi di rete, hanno subito danni sia fisici che morali a causa di file pericolosi condivisi tramite software p2p. La seconda macroareaa, ci ha visto impegnati nello studio di una tecnologia che è destinata a diffondersi e crescere sempre più: la virtualizzazione. L’interesse nasce dai numerosi vantaggi e dalle numerose tematiche che ricopre: sistemi, telecomunicazioni, security...è un ottimo modo per abbassare i costi di un’azienda e mantenere semplice la gestione di alcune risorse. Risponde perfettamente a due regole molto famose nel mondo dell’informatica: KIS “Keep it simple” mantieni semplice e “what do you see, it’s what do you do” cosa vedi è cosa puoi fare. L’ultima macroareaa deriva dalla necessita di monitorare i flussi di rete, in modo da tener sott’occhio eventuali picchi anomali dovuti a malfunzionamenti dei dispositivi o eventuali attacchi dannosi alla sopravvivenza dei servizi di rete.

Versione e data template DATA Giuseppe Guadalupi PAGINA 6/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

2. L’azienda

2.1 - Profilo

Telecom Italia offre oggi i propri servizi a circa 24 milioni di clienti su linea fissa e 33,6 milioni sul mobile in Italia, oltre 10 milioni sull’accesso broadband in Europa e 26,3 milioni di clienti sul mobile in Brasile. Un Gruppo leader delle telecomunicazioni avanzate in Italia, con attività nei settori della telecomunicazioni fisse e mobili, internet, media, office and systems solution , e posizioni di eccellenza in Europa, con il Progetto Broadband, ed in Sud America, con TIM Brasil. Telecom Italia offre prodotti innovativi, semplici da usare eppure ricchi di funzionalità avanzate, dai cordless Voip al nuovo videotelefono, e piani tariffari flessibili a tutte le esigenze: formule flat per la fonia tradizionale e per il quella via internet, pacchetti bundle voce/dati, soluzioni integrate fisso- mobile.

2.2 - Telecom Italia in breve

Versione e data template DATA Giuseppe Guadalupi PAGINA 7/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

2.2.1 - I numeri del Gruppo (al 31 marzo 2007) • 8 i Paesi in cui il Gruppo Telecom Italia è presente nel mondo • Oltre 10 milioni i clienti broadband, di cui 7,1 milioni in Italia • 33,6 milioni le linee mobili TIM in Italia • 26,3 milioni le linee mobili in Brasile, di cui circa 24 milioni GSM • 4,7 milioni i clienti UMTS • 84.191 il numero dei dipendenti

Versione e data template DATA Giuseppe Guadalupi PAGINA 8/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

2.2.2 - I risultati economici e finanziari ( al 31 dicembre 2006) • 31,3 mld € i ricavi • 12,8 mld € l'EBITDA • 5.114 milioni € gli investimenti industriali

Versione e data template DATA Giuseppe Guadalupi PAGINA 9/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

2.2.3 - Composizione azionariato (al 31 dicembre 2006)

Figura 1 Azionariato

2.3 - Assetto Organizzativo

La struttura operativa del Gruppo Telecom Italia è articolata in: • Funzioni Centrali , responsabili del governo del funzionamento del Gruppo Telecom Italia • Operations e Business Unit , responsabili dello sviluppo del business e del coordinamento delle attività per il mercato di riferimento. .

Versione e data template DATA Giuseppe Guadalupi PAGINA 10 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

2.3.1 - Funzioni Centrali Le Funzioni Centrali , ferma restando la responsabilità di Operations e delle Business Unit sui risultati economici e di business, assumono la configurazione di Funzione di Gruppo e/o di Unità di Servizio al fine di assicurare una più diretta focalizzazione delle attività trasversali rispetto al loro ruolo di governo strategico e/o di servizio operativo comune. Le Funzioni di Gruppo hanno la responsabilità di garantire il coordinamento, l'indirizzo ed il controllo a livello di Gruppo per le attività di competenza, assicurando in particolare la definizione delle policy ed il governo complessivo delle tematiche trasversali a Operations e alle Business Unit. Le Unità di Servizio hanno la responsabilità di garantire - in stretto raccordo con Operations e le Business Unit - lo svolgimento delle attività operative comuni a servizio del business; più in particolare le Unità di Servizio: • perseguono obiettivi di efficienza e di livello di servizio verso Operations e le Business Unit, ultime responsabili sui relativi processi, anche attraverso la realizzazione di sinergie di Gruppo e la costituzione di centri comuni di eccellenza professionale; • sono responsabilizzate su specifici Service Level Agreement e regole di cost sharing • competitive per Operations e le Business Unit rispetto al mercato esterno; • si integrano con Operations e le Business Unit, anche nella scelta e valorizzazione delle risorse chiave, e sono dalle Operations e dalle Business Unit stesse coinvolte nelle dinamiche di business correlate ai processi presidiati. Ciascuna Funzione Centrale potrà assumere contemporaneamente sia la configurazione di Funzione di Gruppo che quella di Unità di Servizio , qualora nelle sue articolazioni organizzative siano presenti strutture con ambedue le caratteristiche sopraccitate. In coerenza con i suddetti criteri, lo sviluppo organizzativo delle Funzioni Centrali ne qualifica l'appartenenza all'una e/o all'altra configurazione.

Le Funzioni Centrali - configurate come Funzioni di Gruppo e/o come Unità di Servizio - continuano a garantire la guida delle relative Famiglie Professionali secondo il modello ufficiale di Gruppo, in particolare assicurando lo sviluppo, la valorizzazione ed il coordinamento delle competenze distintive e favorendo la mobilità infragruppo.

Versione e data template DATA Giuseppe Guadalupi PAGINA 11 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

2.3.2 - Operations e Business Unit Operations e le Business Unit sono invece responsabili dei risultati specifici delle aree di attività di competenza. La Business Unit Media risponde direttamente al Presidente Marco Tronchetti Provera, dal quale dipendono anche l'Amministratore Delegato Carlo Buora, con la responsabilità di garantire le attività di indirizzo e controllo connesse al business nonché il governo complessivo delle tematiche trasversali al business stesso e l'Amministratore Delegato alle Operations Riccardo Ruggiero, con la responsabilità di garantire la gestione e lo sviluppo del business delle Telecomunicazioni fisse, mobili e dei servizi internet. Al Presidente rispondono inoltre le Funzioni di Gruppo Public and Economic Affairs, Communication and Image, Progetto Italia, Investor Relations, Telecom Italia Latam ed il General Counsel. La Business Unit Olivetti fa riferimento all'Amministratore Delegato Carlo Buora al quale rispondono anche le Funzioni di Gruppo Finance Administration and Control, Human Resources and Organization, Corporate and Legal Affairs, International Legal Affairs, International Affairs, Mergers & Acquisitions ed IT Governance nonchè le Unità di Servizio Telecom Italia Audit and Compliance Services, Servizi per l'Autorità Giudiziaria, Purchasing e Security. Telecom Italia Latam , che risponde direttamente al Presidente è la struttura organizzativa del Gruppo Telecom che ha il ruolo di “corporate delocalizzato” in America Latina; Operations è comunque responsabile dei risultati delle società controllate in America Latina.

2.4 - I meccanismi di governo e di integrazione del Gruppo

Famiglie Professionali Il Sistema delle Famiglie Professionali rappresenta uno dei principali meccanismi di integrazione del Gruppo che garantisce in particolare lo sviluppo, la valorizzazione e il coordinamento delle competenze distintive presenti all'interno delle Funzioni/Legal Entity. Ogni Famiglia Professionale raggruppa le risorse in ambiti funzionali omogenei assicurandone la certificazione di qualità e favorendo la mobilità infragruppo. Per ogni Famiglia Professionale la Funzione Centrale di riferimento garantisce la realizzazione delle politiche, il coordinamento dei processi e la qualità complessiva dei risultati, monitorandoli attraverso indicatori chiave. Ciascuna Famiglia Professionale viene inoltre organizzata con logiche di efficienza - sviluppando l'attitudine ad operare in ottica di Gruppo - con un approccio che massimizza le sinergie e finalizza nel modo più efficace l'impegno verso il cliente esterno/interno. Per ogni Famiglia Professionale sono inoltre definite specifiche soluzioni organizzative e modalità di governo coerenti con le caratteristiche dei diversi processi e strutture.

2.5 - Comitati di Gruppo

Uno dei principali strumenti per il governo e l'integrazione operativa del Gruppo è rappresentato dal Sistema dei Comitati di Gruppo , recentemente rinnovato con l'obiettivo di: • monitorare l'attuazione delle strategie nonché lo sviluppo dei piani e dei risultati; • garantire il coordinamento complessivo delle azioni di business ed il governo delle relative tematiche trasversali; • rafforzare le necessarie sinergie operative tra le diverse funzioni coinvolte nei processi tecnologici, di business e di supporto; • favorire lo sviluppo integrato dei processi di innovazione del Gruppo.

In particolare il nuovo Sistema dei Comitati di Gruppo comprende:

Versione e data template DATA Giuseppe Guadalupi PAGINA 12 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

• il Management Committee , che garantisce il coordinamento delle attività del Gruppo ed assicura l'unitarietà nello sviluppo e nell'attuazione delle strategie di business; • il Comitato Investimenti , che approva gli investimenti che superano i livelli di delega definiti; • le Business Reviews Operations, Media e Olivetti che, per ciascuna struttura, analizzano forecast, risultati e avanzamenti gestionali ed esaminano lo stato di avanzamento dei principali progetti e piani di azione; • il Comitato di Innovazione Tecnologica , che garantisce il presidio integrato dei processi di innovazione e sviluppo tecnologico; • il Comitato IT Governance , che definisce le linee guida delle strategie informatiche del Gruppo, indirizza le scelte strategiche e gli investimenti IT in coerenza con le esigenze del business, monitora l'avanzamento delle principali iniziative IT, la qualità delle soluzioni e l'efficienza dei costi. • il Comitato Risk Management , che assicura l'individuazione, la valutazione e il governo dei rischi di Gruppo coordinando il piano di azioni preventive finalizzate ad assicurare la continuità operativa del business.

Versione e data template DATA Giuseppe Guadalupi PAGINA 13 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

3. Organigramma T.TI.SE.SS

Al di sopra delle strutture sotto riportate, c’è la direzione Techonology (T.) di S.Pilleri che si occupa dell’innovazione tecnologica del gruppo e dello sviluppo e l’esercizio di telecomunicazioni fisse e mobili, dei sistemi e delle infrastrutture. Di seguito si ha: 1. TIS = Technical Information Services 2. SE = Security Engineering 3. SS = Security Solution (il gruppo in cui siamo io ed i miei collaboratori)

Figura 2 - TIS

Figura 3 - SE

Versione e data template DATA Giuseppe Guadalupi PAGINA 14 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4. Argomenti trattati

4.1 - File sharing - P2P

Il file sharing è la condivisione di file all'interno di una rete comune. Può avvenire attraverso una rete con struttura client-server oppure peer-to-peer . Le più famose reti di peer-to-peer sono: Kadmilia ed eDonkey. Non vanno confuse con reti che costituiscono un filesystem distribuito, come Freenet. Queste reti possono permettere di individuare più copie dello stesso file nella rete per mezzo di hash crittografici, di riprendere lo scaricamento del file, di eseguire lo scaricamento da più fonti contemporaneamente, di ricercare un file in particolare per mezzo di un URI Universal Resource Identifier. L'esplosione delle reti P2P è dovuta in gran parte alla possibilita’ di reperire in rete opere il cui possesso richiederebbe un prezzo di acquisto. Per questo ci è stato chiesto di studiare il funzionamento di queste tecnologie e di scoprire come funziona l’offuscamento del protocollo che permette l’incomprensione dei flussi trasmessi, ma non l’anonimato.

Versione e data template DATA Giuseppe Guadalupi PAGINA 15 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.1.1 - eDonkey La rete eDonkey (ed2k) è stato il primo network supportato da eMule fin dalla prima versione. La struttura della rete è composta da client e server.

4.1.1.1 - I server Nella rete non è presente un unico grande server ma molti che si distribuiscono il carico e comunicano fra loro. I server sono gestiti da volontari che li mantengono a proprie spese. I server sono solo dei database che indicizzano i file e gestiscono le connessioni tra gli utenti. Quindi: • I file condivisi presenti nel network non risiedono nei vari server ma lo scambio avviene sempre tra client e client. • L'indice dei file condivisi da un client viene inviato al server durante la connessione tra i due. Non esiste quindi un server migliore o più veloce degli altri, sono però avvantaggiati quelli con molti utenti, perché comunque comunicano fra di loro.

4.1.1.2 - I client Con client si intende un qualsiasi programma in grado di interfacciarsi con la rete server di eDonkey. Non esiste solo eMule, ma anche molti altri, tra i più famosi vi sono eDonkey2000 e .Un client si connette ad un solo server alla volta sufficiente per eseguire una ricerca su tutti i server presenti nella rete, in quanto comunicano fra di loro. Il programma riprende i download/upload che erano in corso, non appena è di nuovo disponibile una connessione Internet. Se il nodo ha una connessione always-on, è necessario prolungare (o eliminare) l'intervallo di tempo prima dell'entrata in stand-by, che interrompe la connessione.

4.1.1.3 - Il FileHash Il FileHash serve ad identificare in modo univoco un file nel network e viene calcolato da eMule utilizzando l'algoritmo MD4. Per i file di dimensione minore di 4 Gigabyte il FileHash è di 32 cifre esadecimale mentre i file di dimensione maggiore hanno un FileHash esteso.

4.1.1.4 - I link eD2K Il link eD2K è un link utilizzato dai client eDonkey per il download di un file. Questa è la sua struttura di base ed2k://|file|nome_del_file|lunghezza_in_byte|fileHash_di_32_cifr e_esadecimali|/ L'univocità di un file nella rete è garantita dalla coppia Lunghezza in byte - FileHash.

Versione e data template DATA Giuseppe Guadalupi PAGINA 16 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.1.2 - KAD Il network KAD è un'implementazione di Kademlia, è una rete serverless, cioè senza server, concepita per distribuire il carico di lavoro a tutti i client. Tramite la rete KAD un client può contattare direttamente un altro client, al fine di accodarsi per un file che ha nella propria coda di download. Ogni client della rete KAD funge anche da server e rappresenta un nodo di comunicazione attraverso il quale passano le richieste del network. È stata introdotta in eMule dalla versione 0.40 e rappresenta una via alternativa, ma non esclusiva, per la ricerca delle fonti, che aumentano notevolmente. Di fatto si aggiunge alle precedenti vie di contatto presenti: i server eD2k e lo scambio delle fonti. La connessione alla rete, detta procedura di bootstrap, avviene contattando gli altri client che assegnano lo stato open nel caso il client sia contattato liberamente altrimenti lo stato di firewalled se la comunicazione risulta filtrata. Dalla versione 0.44a di eMule in poi, è presente la funzione buddy attraverso la quale un client firewalled riesce a comunicare nella rete appoggiandosi ad uno di tipo open. Dalla 0.47a è presente la nuova rete KAD 2.0, resa definitiva nella 0.47c. (Nella 0.47a non era ancora stata completamente testata).

4.1.2.1 - Network protocol KAD usa UDP come message protocol, questo fa di KAD un protocollo vantaggioso poiché le operazioni e i processi di interazioni inducono un peer a inviare molti messaggi, in otre non è necessario stabilire una sessione, poiché generalmente un peer invia solo una richiesta agli altri peer. I peers possono connettersi e lasciare la quando vogliono; è possibile fare lunghe sessioni o relazioni con altri peers. Così un cliente deve sempre essere informato sullo stato dei contatti che hanno abbandonato la rete. La soluzione è un timer, che prende il controllo dei messaggi, terminando le operazioni come una interazione, ricerche o publishing process dopo un definito timeout. Ma il timer induce periodicamente differenti processi come il ripubblicamento dei files o il checking per un firewall. Ogni segmento UDP parte con un byte chiamato ID, esso identifica il protocollo Kademlia. aMule- Kad ed eMule-Kad usano 0xE4. Il seguente byte è chiamato opcode e rappresenta il codice d'operazione del protocollo KAD, generalmente definisce il differente tipo di richiesta o di risposta. Un overlay client ha tipicamente due port number, ognuno per un differente tipo di messaggio. una porta è usata per inviare e ricevere messaggi dello standard e service operations. eMule e aMule usano la porta UDP 4672. L'altra standard port è la 4662 ed usa il TCP protocol per il trasferimento dei files (upload/download) La prima è detta messaging-port , la seconda service-port .

4.1.2.2 - Routing Table La tabella di routing organizza i contacts di un peer in vari K-buckets (K è un numero) che sono le foglie dell'albero di routing. Di nuovo questi K-buckets sono organizzati dalla routing zones che corrisponde a tutti i nodi dell'albero di routing. Ogni K-buckets rappresenta un sotto albero che ha K contatti. Cosi se un client vuole localizzare un nodo in un altro sotto albero, salterà direttamente al primo nodo conosciuto di quel sotto albero. Possiamo avere max 5000 contacts con tutti gli attributi ad essi legati. NB: routing table e una hash table strutturata. Per mantenere la routing table pulita, senza dati di peers non attivi, il client invia periodici hello request ai contacts, che hanno 2 minuti per rispondere. La tabella di routing migliora continuamente la sua struttura cercando nuovi contatti , attraverso due differenti strategie: random lookup e self lookup .

Versione e data template DATA Giuseppe Guadalupi PAGINA 17 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Random cerca i nuovi contacts, che corrispondono ad un certo bucket creando un target che ha il primo bit uguale a quello del bucket. Self lookup cerca i contacts più nuovi, il target è il clietID del medesimo peer.

4.1.2.3 - Contacts Nuovi contacts possono essere ottenuti con la bootstrap request, quando 20 random contacts di altri client sono rinviati o lasciati insieme lo standard iteration process; quando l'iteration process motivano il client a inviare richieste ai peers, che risponderanno con diversi closer nodes (nodi più vicini) per un determinato target, il client lo inserisce senza verificare che sia dentro la routing table. In fine il client può essere contattato passivamente da un contact sconosciuto.

4.1.2.4 - Bootstrap Per connettersi alla rete kad un peer deve effettuare un processo di bootstrap. Perciò un client kademlia necessità almeno di un nodo attivo nella rete kad con . Come risposta ad una bootstrap request il peer replica con una lista di altri nodi della rete, cosi da popolare la tabella dei contacts del client appena connesso. ci sono anche delle pagine internet come che mantengo il nodes.dat (uso minimo dei DNS).

Figura 4 - Bootstrap

4.1.2.5 - Initial handshake Quando un client ottiene nuovi contacts, effettua un initial handshake process. Questa è una tipica procedura che i clients o i peers effettuano per contattare e assumere chi è attivo.

Versione e data template DATA Giuseppe Guadalupi PAGINA 18 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 5 - Initial Handshake

4.1.2.6 - Firewall check Il firewall check indica l'accessibilità delle porte e corrisponde al basso ID in eDonkey. Il Kad protocol ha un suo processo per capire se le porte possono essere accedute direttamente. Questo checking è eseguito immediatamente dopo aver stabilito la connessione alla rete Kad, il processo in seguito viene ripetuto ogni ora. Questo è ciò che avine nel processo di firewall check, il processo non va a buon fine se non è ricevuto l'ACK

Figura 6 - Firewall check

4.1.2.7 - Find buddy Un firewalled client ha necessità di trovare un non-firewalled client, chiamato “buddy”. Un buddy può ricevere messaggi destinati al client firewalled. Solo un buddy è permesso per ogni firewalled o non-firewalled client. La ricerca parte 5 minuti dopo il fallimento del firewall check.

Versione e data template DATA Giuseppe Guadalupi PAGINA 19 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 7 - Find Buddy Un client sceglie i contatti in base ad una specifica posizione (la posizione o distanza tra client è la distanza numerica tra il loro ID, detta XOR-DISTADINCE) e mantenendola in una hash table strutturata chiamata anche routing table. Questa è la distributed hash tables.

I lookup descrivono i metodi e gli algoritmi per trovare i peers, che sono vicini ad una certo target nel Kad space.

4.1.2.8 - Localizzare gli Oggetti Un oggetto può essere localizzato con un lookup iterative o recursive . Recursive lookup dipende dai peers intermedi, quindi corre il rischio di inviare lookup messages a peers non più in vita. Ma rispetto all'iterative ha una minore latenza. L'Iterative è facile da implementare, poiché permette un miglior debugging e manutenzione. L'ultimo è il motivo per cui il metodo iterative è preferibile al recursive nel protocollo Kademlia. Specialmente se si considera la grande variabilità della rete KAD al variare del tempo.

Figura 8 - Lookup iterative o recursion

Con l'iteration method, il peer iniziale prende il controllo del lookup, gli altri peers nel lookup catena eseguono solo semplici requests con alcuni dei loro contatti più vicini, indicando quale peer contiene l'oggetto ricercato. Con il recursive method il peer invia il proprio indirizzo a un vicino, quando il target peer riceve il messaggio lo notifica al peer iniziale.

Versione e data template DATA Giuseppe Guadalupi PAGINA 20 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

In teoria vi dovrebbe essere un solo processo di iterative lookup per trovare un peer, come descritto precedentemente, ma vi è il rischio che un singolo client in stallo possa aumentare la latenza dell'iterative process. Il ritardo e dato dalla somma di ogni contatto in stallo nell'iterative process. Per evitare ciò Kademlia implementa un nodo di lookup concorrente, chiamato parallel lookup. Questo significa che una lookup request è inviata a entrambi i peers nello stesso momento, invece di inviare la richiesta a solamente un peer. Adesso quando un peer nell'iteration process è sovraccarico, ci sono altri peers che possono rispondere. È importante trovare il giusto equilibrio, perché un alto numero di parallel lookups velocizza notevolmente la ricerca del target, ma incrementa anche il network overload. Nel Kademlia protocol è definito un numero di massimo 3 parallel lookups.

Figura 9 - Lookup paralleli iterative

In figura sono mostrati i tre passi seguiti dall'iterative process. Primo, peer che inizia la ricerca invia tre messaggi ai più vicini contatti, come risposta ottiene i quattro contact più vicini. nell'esempio due contatti sono nella tolerance zone del target. Nell'ultimo passo il peer invia una request per closer contact ai tre contatti più vicini nuovamente. Ma solo due sono disponibili e rispondono con contact ancora più vicini. poiché il client non sa se i nodi sono ancora connessi. cosi il prossimo passo è eseguire un'altra request a tutti i nuovi possibili contatti ottenuti. Di nuovo essi rispondono con un'altra lista di possible contacts. Finalmente quando un contato è trovato attivo nella tolerance zone del target, il peer invia loro l'action request. Essi risponderanno con il tipo specifico di risposta. Un contatore viene incrementato ad ogni risposta e la ricerca del nodo sarà stoppata quando il contatore raggiunge il massimo. Altrimenti si continua come mostrato in figura.

Figura 10 - Ricerca del nodo

Versione e data template DATA Giuseppe Guadalupi PAGINA 21 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.1.3 - Emule Il progetto eMule, nasce il 13 maggio 2002 grazie al programmatore tedesco Hendrik Breitkreuz, conosciuto come Merkur, insoddisfatto del client eDonkey2000. Merkur radunò intorno a se altri sviluppatori con lo scopo di creare un programma eDonkey-compatibile, ma con molte più funzioni. Il programma si afferma rapidamente come client di punta sulla rete grazie alle sue caratteristiche innovative.

4.1.3.1 - Come funzionano i normali programmi P2P. Si ipotizzi di avere un file composto da tre blocchi, si ipotizzi ancora che il file abbia una dimensione totale di 30MB (nella realtà un file di tre blocchi ha una dimensione totale di 9.28*3=27.84MB, l'ipotesi che si sta facendo serve per semplificare ulteriormente il ragionamento). Se il file è richiesto da 3 utenti, con i p2p tradizionali, si invierà a tutti il primo pezzo di file. Se alla fine della sessione si è riusciti ad inviare una sola parte per client, questi si ritroverranno ad avere tutti la stessa parte di file e dovranno aspettare il successivo collegamento della fonte completa per riprendere il down del file. Utilizzando eMule invece verranno inviati ad ogni utente un chunk diverso, ad esempio: al primo utente si invia la parte numero 1, al secondo la parte numero 2, al terzo la parte numero 3. Se, come ipotizzato prima, dopo aver inviato un chunk per client, la fonte completa si scollega, nel network ci sarà comunque tutto il file in condivisione, e i client che prima hanno dialogato con la fonte completa, adesso possono scambiarsi fra di loro le relative parti mancanti. Il vantaggio è evidente: maggiore possibilità di diffusione dei file, maggiore probabilità di terminare un download.

Altri p2p eMule

Disconnesso Disconnesso

Versione e data template DATA Giuseppe Guadalupi PAGINA 22 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 11 - p2p vs emule

Questa cosa ha ovviamente un costo, ed il costo e' che eMule, a seconda della parte ricevuta del file, potra' creare file temporanei molto piu' lunghi di quanto si e' effettivamente trasferito. E' cosi' possibile avere ricevuto solo 2MB di un file di oltre 700MB, e avere un file temporaneo di 700MB. Questo appunto perchè non si riceverà il file dall'inizio alla fine in modo lineare, ma i chunk saranno scaricati in base alla disponibilità istantanea, in ordine irregolare. Ogni client sceglie i pezzi più rari da chiedere, per bilanciare e velocizzare la diffusione globale. Prima si controlla se un pezzo è rarissimo, se non ci sono pezzi molto rari si cerca di completare i blocchi da 9 mega già iniziati per poterli sharare. Con questo sistema si tenta di minimizzare la possibilità di avere file incompleti in sharing. Infine, una nota. eMule automaticamente rende disponibile alla condivisione i files che avete in download, anche se non sono completati. Questo per permettere una diffusione dei files piu' veloce. Per potere condividere un file che avete in download pero' dovete aver ricevuto almeno un chunk completo dello stesso.

4.1.3.2 - Coda di upload I download in eMule funzionano grazie ad un meccanismo di code. Ogni richiesta di upload è posta in una "Queue o lista d’attesa" propria di ogni eMule alla quale viene assegnato un punteggio, calcolato: punteggio = tempo attesa * priorità del file * crediti Il tempo di attesa (espresso in secondi) indica da quanto tempo un client è entrato in coda per il download di un file.

4.1.3.3 - Collezioni Presente in eMule dalla versione 0.46b le collezioni sono dei file con estensione .emulecollection normalmente condivisi come qualsiasi altro tipo di file. Una collezione è composta da un insieme di link eD2k ha quindi dimensioni molto contenute ed il suo download è quasi sempre immediato.

Versione e data template DATA Giuseppe Guadalupi PAGINA 23 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.1.3.4 - Commenti

tabella Significato Non votato Ottimo Buono Sufficiente Mediocre Fake

Figura 13 - Commenti sui file

I commenti sono una funzione molto utile per mezzo della quale una persona può far sapere alle altre il proprio giudizio su un file condiviso o scaricato. I commenti si compongono di una valutazione compresa fra quelle elencate nella seguente tabella, il nome del file giudicato, l'autore del commento e il testo vero e proprio. Spesso purtroppo i commenti contengono pubblicita' verso alcuni files, tuttavia in generale questo sistema puo' essere comodo per l'utente che puo' controllare se sta veramente scaricando quello che vuole.

4.1.3.5 - Crediti I crediti sono uno dei modificatori per il calcolo del punteggio nella coda di upload. In eMule un client accumula crediti verso un altro client in base alla quantità di dati scambiati reciprocamente e variano da 1 a 10, calcolati con le seguenti formule: crediti = (bytes ricevuti * 2) / bytes inviati crediti = radice quadrata dei (Megabyte ricevuti + 2) / bytes inviati eMule assegnerà i crediti scegliendo il risultato minore tra le due precedenti formule.

4.1.3.6 - Fonti A4AF Durante il download di un file eMule può essere in coda solamente per un file alla volta, se un client possiede più file tra quelli scaricati. eMule utilizza quindi le fonti A4AF Asked For Another File cioè contattato per un altro file per entrare nella coda di un file quando il download del precedente è terminato. La gestione delle fonti A4AF è basata sul meccanismo delle Priorità di download.

4.1.3.7 - I.C.H. e A.I.C.H. L'I.C.H. e l'A.I.C.H. (Intelligent Corruption Handling ed Advanced Intelligent Corruption Handling) che in presenza di corruzione dei dati ricevuti permette al client di effettuare il controllo e l'eventuale download di blocchi della dimensione di 180KB (contro i 9,28MB che formano un chunk completo).

4.1.3.8 - Priorità di download eMule assegna le fonti A4AF ad un file in base alla sua priorità. Vi sono 9 livelli distinti di priorità determinati dalla categoria e dal file. Priorità finale Priorità della categoria Priorità del file 1 Alta Alta 2 Alta Normale 3 Alta Bassa 4 Normale Alta

Versione e data template DATA Giuseppe Guadalupi PAGINA 24 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

5 Normale Normale 6 Normale Bassa 7 Bassa Alta 8 Bassa Normale 9 Bassa Bassa Figura 14 - Priorità di Download

4.1.3.9 - Priorità di upload La priorità di upload di un file condiviso descrive il livello di importanza di condivisione, può essere impostato manualmente oppure in automatico da eMule. Il variare del valore associato va a modificare il punteggio nella coda di upload. Queste sono le proprietà ed i valori utilizzati da eMule: Release 1,8 Alta 0,9 Normale 0,7 Bassa 0,6 Molto Bassa 0,2 Figura 15 - Priorità di upload

4.1.3.10 - ID: Una delle cose importantissime da controllare in eMule non appena si è connessi ad un server è l'ID. E' inutile infatti avere una veloce linea internet ADSL se poi si viene rallentati da una configurazione errata del proprio computer. In eMule l'ID è un numero assegnato dal server e può essere di due tipi: ALTO o BASSO. Se va tutto bene è alto perchè eMule può essere contattato dall'esterno senza problemi sulla porta TCP 4662.Se ci sono problemi l'ID è basso perchè la 4662 è bloccata. L'ID perciò non è determinato dalla velocità di upload, dalla quantità di file condivisi, dalla velocità del vostro modem, ma dipende solo dalla "raggiungibilità" del proprio pc dall'esterno. Per sapere se si ha un ID alto / kad connesso la cosa più immediata che si può fare è controllare il colore delle frecce sul mondino in basso a destra. Ed esattamente:

Figura 16 - Banner controlli emule

1. = Indica che siamo connessi al server con ID ALTO e Kad è Funzionante. TUTTO OK! 2. = Indica che siamo connessi al server con ID BASSO e Kad è firewalled. PROBLEMI! 3. = Indica che siamo connessi al server con ID ALTO, ma Kad è spento. Andate in Opzioni --> Connessione e mettete il segno di spunta su Rete KAD. Premete in alto sul pulsante Kad e nella finestra cliccate su Boostrap (vedi la Kademlia). Potete controllare lo stato della vostra connessione ai server e alla rete Kad nella finestra Server -- > Le Mie Informazioni (come nell'immagine). Altrimenti utilizzate le freccette in basso come spiegato sopra. Le situazioni più comuni di ID Basso e la relativa soluzione: • Avete un firewall installato oppure non avete ancora configurato il firewall di windows xp (controllate subito) • Collegamento con router. Dovete configurarlo aprendo le porte 4662 TCP e la 4672 UDP come spiegato nella sezione Router. Versione e data template DATA Giuseppe Guadalupi PAGINA 25 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

• Collegamento da PC in LAN (rete locale). Se ci sono vari computer collegati fra loro in uno stesso edificio a volte c'è un router da configurare a volte la condivisione connessione internet di windows cioè l' ICS. • Collegamento con cellulare GPRS (sempre id basso a parte alcuni rari casi. non potete farci nulla). • Siete abbonati ad un servizio di ADSL via Satellite (ID Basso sempre senza eccezioni). Le principali limitazioni di coloro che si collegano con ID Basso sono: • Per evitare sovraccarichi i server accettano pochissimi ID Bassi, perciò rischiate di non trovare posto. Infatti un ID Alto non puo' iniziare ad inviare direttamente i dati ad un ID basso perchè la 4662 è bloccata. Deve prima chiedere al server dove l'ID basso è collegato di informarlo che qualcuno vuole inviargli dati. Sarà l'ID Basso quindi a iniziare la comunicazione con noi chiedendoci di darlo scaricare. • Chi ha un ID basso non può mai collegarsi con altri ID bassi, (e quindi le uniche fonti possibili sono quelle con ID alto) perciò potrà contare su un numero minore di fonti e scaricherà più piano. • Un id basso può dare file solo agli utenti con ID alto collegati allo stesso server (Non cambiate server perchè automaticamente cancellerete tutti gli utenti attuali dalla vostra coda!!) Ciò è negativo se uno deve iniziare a diffondere un nuovo file. • Le fonti con ID basso non vengono diffuse attraverso lo scambio fonti di eMule perchè tanto non potrebbero essere utilizzate dagli utenti collegati a server diversi dal proprio. NOTA: Il server quando vi collegate assegna l'ID alto (maggiore di 16777216) con un semplice calcolo a partire dal vostro IP (indicato con A.B.C.D): IP= A.B.C.D. ===> ID= A + 256* B + 256*256* C + 256*256*256* D Il server assegna ID Basso con un numero progressivo che parte da 1 per il primo eMule con ID basso che si collega a lui e che aumenta via via per ogni altro utente con ID Basso successivo (non dipende perciò dall'IP).

4.1.3.11 - KADEMLIA FIREWALLED: La rete di ricerca senza server kademlia utilizza pacchetti sulla porta 4672. Se tale porta non è aperta si verifica lo stesso problema che causa ID basso con i server: non potete essere contattati dagli altri utenti. Questa condizione in Kad viene detta stato firewalled. Il corretto funzionamento viene invece indicato con stato connesso. Per consentire il funzionamento di Kad anche agli utenti firewalled ogni utente può avere un compagno collegato a lui. Un utente emule (con lo stato open) che ha un compagno svolge lo stesso compito dei server con un id basso: lo contatta quando qualcun altro vuol fargli scaricare dei file perchè inizi la connessione e kad possa funzionare. L'assegnazione del compagno è automatica e non modificabile. Chi ha kad firewalled ha gli stessi problemi di chi ha ID Basso, con in più il problema che se emule non trova un compagno kad non funziona. Poichè molto spesso chi ha ID Basso ha anche KAD firewalled, controllate il firewall o il router sia per la 4662 TCP che per la 4672 UDP così risolvete entrambi i problemi allo stesso tempo.

Versione e data template DATA Giuseppe Guadalupi PAGINA 26 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.1.4 - Offuscamento del Protocollo Questa caratteristica è stata introdotta nell'ultima versione di eMule (0.47c).Essa serve a criptare i pacchetti detti Chunk che gli utenti si scambiano trasformandoli da traffico P2P a traffico internet che i filtri non riconoscono e lasciano passare, permettendo ai clienti di avere la possibilità di usare a piena potenza la loro connessione ad Internet. Molti server quando si effettua una ricerca danno come risultato tanti file con nome "PLEASE USE emule 0.47c AND ENABLE Protocol obfuscation to get results from this server". Figura 17 - Risultati Ricerca

Significa che tali server richiedono che attiviate l'offuscamento (spiegato qui di seguito), altrimenti si rifiutano di darvi i risultati. E' una decisione che prende liberamente ogni proprietario di server emule (che ricordiamolo sono gratuiti agli utenti ma non ai gestori, che possono subire conseguenze legali), perciò va rispettata. Vi conviene attivare l'offuscamento cliccando Opzioni --> Sicurezza --> Attiva il protocollo di offuscamento (come illustrato nel seguito) e subito dopo cambiare il server a cui siete collegati facendo doppio click su un server diverso nella finestra server (oppure chiudete e riaprite emule).Attivare l'offuscamento non causa nessun rallentamento e nessuno svantaggio: è caldamente consigliato a tutti. L'offuscamento del protocollo è una caratteristica di eMule aggiunta a partire dalla versione 0.47b per venire incontro alle esigenze di tutti quegli sfortunati utenti rallentati o bloccati dal loro provider (es. Libero), che si sono presi la libertà di decidere cosa e quanto un loro abbonato può e non può fare. Se si attiva questa opzione eMule cerca di "nascondere" i dati che invia e riceve quando comunica con altri client e server in modo da impedire che qualcuno analizzando i pacchetti possano riconoscerli come provenienti dal programma emule. Questo sistema non è stato creato per rendere "anonimi" anche perchè emule richiede un collegamento diretto con ogni utente che possiede il file che si vuole scaricare e perciò nascondersi è impossibile.L'unico risultato dell'offuscamento è che i dati spediti, per uno che li vede passare sul filo del telefono, sembreranno "random" cioè cose a caso senza significato. L'offuscamento una volta attivato funziona per i protocolli ed2k TCP e UDP, Server TCP e UDP, Kad TCP. I pacchetti Kad UDP non sono ancora offuscabili per motivi di compatibilità col passato.

4.1.4.1 - Impostazioni eMule dalla versione 0.47b supporta le connessioni offuscate provenienti dagli altri utenti senza bisogno di attivare nessuna delle caselle in opzioni --> sicurezza. Se siete sicuri che il vostro provider (fornitore di servizio ADSL), non limiti in alcun modo il vostro emule potete lasciare disabilitate tutte le caselle e sarete comunque sicuri di aiutare tutti gli altri che invece cercano di parlare con voi tramite l'offuscamento. • Attiva il protocollo di offuscamento va selezionato come nella figura. Se avete il sospetto che il vostro emule sia rallentato o bloccato dal vostro fornitore di servizio internet: Il vostro emule cercherà allora di stabilire collegamenti offuscati con gli altri emule e con i server ogni volta che sarà possibile, mentre continuerà ad utilizzare il metodo normale con i server e gli emule che ancora non sono stati aggiornati alle nuove versioni.Accendere l'offuscamento non porta svantaggi rilevanti: un aumento insignificante dell'utilizzo del processore e una manciati di byte di overhead (cioè sprecati) nei collegamenti. Versione e data template DATA Giuseppe Guadalupi PAGINA 27 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 18 - Offuscamento del protocollo

• Permetti solo connessioni offuscate, blocca invece tutti i collegamenti con versioni di eMule precedenti alla 0.47b oppure con l'offuscamento disabilitato e con tutti i server non ancora aggiornati. E' sconsigliata in Italia, almeno per il momento, in quanto nessun provider blocca completamente eMule e inoltre perchè ci vorranno mesi prima che gli utenti aggiornino alla 0.47b e successive: perdereste gran parte delle fonti e la velocità di scaricamento ne risentirebbe. • Disattiva il supporto per le connessioni offuscate, non va mai selezionato in quanto danneggia anche tutti gli sfortunati che vorrebbero comunicare con voi con l'offuscamento acceso e non possono.

4.1.4.2 - Interfaccia grafica L'offuscamento lavora "dietro le quinte" perciò non vi sono cambiamenti nell'utilizzo quotidiano di emule. Potete fare tasto destro --> mostra dettagli nelle liste fonti dei file che state scaricando e per ogni emule che avete contattato vedrete una delle seguenti possibilità: • Attivo: Se l'offuscamento con quell'utente è attivo. Quest'icona con il simbolo della chiave lo conferma. Figura 19 - Interfaccia grafica

Versione e data template DATA Giuseppe Guadalupi PAGINA 28 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

• Supportato: se sia voi che quell'utente supportate l'offuscamento che però non verrà utilizzato in seguito alle vostre scelte nelle opzioni.

Figura 20 - Offuscamento protocollo lato client • Non supportato o disabilitato: se quell'utente ha spento l'offuscamento o il suo emule non è aggiornato. • Nella finestra server invece potete vedere sul lato destro se la vostra connessione con quel server è effettivamente offuscata :

Figura 21 - Finestra server

• Nella lista server invece vedrete nell'ultima colonna sulla destra i server che supportano l'offuscamento.

Figura 22 - Lista Server

4.2 - Vmware

Versione e data template DATA Giuseppe Guadalupi PAGINA 29 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.2.1 - Soluzione delle problematiche IT Il software VMware per la virtualizzazione dell‘infrastruttura è utilizzato dalle imprese di qualunque dimensione per incrementare l‘efficienza e la convenienza delle operazioni informatiche. La disponibilità immediata di risorse IT adeguate migliora le prestazioni aziendali e aumenta il vantaggio competitivo. Con il software di virtualizzazione Vmware le organizzazioni IT sono in grado di visualizzare, gestire e implementare rapidamente le risorse dei data center anche di grandi aziende, consentendo agli amministratori IT di rispondere immediatamente ad esigenze aziendali. Questa tecnologia può essere applicata ad alcune delle problematiche IT più complesse, inclusi il consolidamento dei server di produzione, il miglioramento della business continuity e la semplificazione del ciclo di vita dello sviluppo software. • Consolidamento dei server: controllo della proliferazione dei server attraverso la virtualizzazione, che consente di eseguire più carichi di lavoro su un numero ridotto di server riducendo le esigenze future di server fisici. • Business continuity: riduzione dei tempi di inattività attraverso un aumento della semplicità e affidabilità delle soluzioni ad elevata disponibilità e disaster recovery. • Sviluppo e test: trasformazione del ciclo di vita software attraverso la virtualizzazione, che consente di ridurre i costi, incrementare la produttività e migliorare la qualità delle attività di sviluppo e test. • Sicurezza e gestione dei desktop: incremento della gestibilità e della sicurezza dei desktop aziendali, con conseguenti riduriduzioni dei costi, contenimento dei rischi e aumento della flessibilità dell‘infrastruttura.

Versione e data template DATA Giuseppe Guadalupi PAGINA 30 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.2.2 - Prodotti e tecnologie L‘architettura software VMware per la virtualizzazione dell‘infrastruttura consente alle aziende di ridurre i costi IT attraverso un incremento di efficienza, flessibilità e reattività. La piattaforma hardware VMware costituisce la base dell‘infrastruttura virtuale. Implementa a livello software l‘immagine hardware su cui si eseguono sistemi operativi e applicazioni. Il software VMware consente alle organizzazioni IT di virtualizzare sistemi di elaborazione, storage e rete e di gestirli a livello centrale. I prodotti VMware assicurano sistemi virtuali di classe enterprise che incrementano utilizzo, prestazioni e tempi di attività dei sistemi, riducendo i costi e la complessità di erogazione dei servizi aziendali. Sfruttando la tecnologia esistente, è possibile implementare nuove applicazioni con meno rischi e con costi di piattaforma ridotti. Telecom utilizza vmware infrastructure 3:

Figura 23 - Suite per la gestione e l'ottimizzazione dei data center

VMware ESX Server 3 include la tecnologia VMotion, che consente di migrare le macchine virtuali da un sistema all'altro anche mentre sono attive, e servizi come Distributed Availability Services , che permettono di identificare i malfunzionamenti nelle macchine virtuali e farle ripartire automaticamente su host alternativi, nonché Distributed Resource Scheduling , in grado di bilanciare dinamicamente i carichi di lavoro delle macchine virtuali tra host. Questi servizi rilevano quando l'attività della macchina virtuale satura un host ESX Server e fanno scattare automaticamente le migrazioni VMotion per trasferire le macchine virtuali funzionanti ad altri nodi ESX.

Versione e data template DATA Giuseppe Guadalupi PAGINA 31 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

ESX Server 3 supporta un più ampio numero di sistemi x86, è compatibile con le tecnologie di network storage NAS e iSCSI ed è ottimizzato per sfruttare i processori dual-core. I limiti di memoria della macchina virtuale, in grado di far girare Windows, e NetWare, sono ora stati estesi a 16 GB. VirtualCenter 2 è in grado di controllare infrastrutture composte da centinaia di host e migliaia di macchine virtuali e fornisce funzionalità di reporting e protezione di rete. Il software include un client unificato e tool di configurazione dell'host centralizzati.

Versione e data template DATA Giuseppe Guadalupi PAGINA 32 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.2.3 - Concetti base

VMware ESX server è un software prodotto dalla Vmware che permette la creazione, l'uso e la gestione delle macchine virtuali.

A differenza degli altri prodotti Vmware, come Workstation, esso non si installa su un sistema operativo preesistente, ma si installa direttamente sul Harware sottostante. Questa situazione gli permette di avere il pieno controllo delle risorse Hardware sottostanti, il che ne migliora la gestione da parte del Software. VMware ESX incorpora un gestore delle risorse (resource manager) e una service console che provedono al bootstrap, alla gestione ed altri servizi.

Figura 24 - Vmware ESX

Il core di vmware esx è disegnato per implementare l'astrazione delle risorse HW, cosi da poter allocare multiple quote di lavoro in ambienti pienamente isolati. Ciò permette ai Guest OS di lavorare senza interferire l'un l'altro nella competizione di una risorsa.

La struttura logica: VMware virtualization layer provvede alla gestione dell'ambiente HW (separa i vari ambienti) e della virtualizzazione del HW sottostante. Resorse Managemente provvede al partizionamento e alla disponibilità delle risorse, quali: CPU, network bandwidth, memory. per ogni macchina virtuale. I componenti di interfaccia HD includendo driver device, i quali abilitano specifici servizi HD disponibili, mentre nascondo le differenze HD presenti al disotto.

Virtualizzazione

Versione e data template DATA Giuseppe Guadalupi PAGINA 33 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Il layer di virtualizzazione provvede a far da ponte tra HD-virtuali e quello reale, in questo modo nessun software potrà capire a quale hd specifico sta accedendo, poichè fa riferimento al hd- virtuale.

Il layer di virtualizzazione crea una macchina fisica idealizzata che è isolata dalle altre VM sul sistema. Provvede a creare i virtual device che saranno mappati sullo specifico HD condiviso: BIOS, userinterfaces, network interfaces...

L'unico modo per connetere le varie macchine virtuali è tramite una connessione di rete (le vmnet, che simulano degli switch, e le vmnic). Questo permette di costruire dei firewall interni, o simulare qualsivoglia topologia di rete.

Cpu virtualization Ogni VM apparentemente gira su una propria CPU, o set di CPU, con un proprio registro, buffer e altre strutture di controllo. molte istruzioni sono eseguite direttamente dalla CPU fisica, permettendo una computazione intensiva. Le istruzioni privilegiate sono gestite dal patented e patent-pending technology nel virtualization layer, mentre le istruzioni non privilegiate sono eseguite dalla CPU reale senza l'hoverhead introdotto dalla emulazione.

Memory virtualization Mentre un continuo spazio di memoria è visibile per ogni VM, la memoria fisica allocata può non esserlo. Le parti non continue sono rimappate efficacemente e presentate a ogni VM. Cosi la memoria fisica di una VM può essere mappata da pages condivise, o da pages che sono non- mappate o nella swap. Questa gestione della memoria virtuale è migliorata da ESX server, senza avere informazioni del sistema operativo e senza interferire con esso nella gestione della memoria.

Disk virtualization Supporto dei disk device in ESX è un esempio della indipendenza dal HD. Ogni disco virtuale è presentato come uno SCSI driver connesso a uno SCSI adapter. Questo device è il solo disk storage controller usato dai sistemi operativi ospiti, mentre SCSI, RAID e Fibre Channel addapeter potrebbero essere usati nel sistema sottostante.

Private virtual ethernet networks (vmnets) Connessioni vmnet possono essere usate per reti ad alta velocità tra macchine virtuali. L'isolamento delle varie macchine è utile per disegnare e specialmente supportare le network topology, che normalmente dipendono dall'uso di device differenti per provvedere all'isolamento e alla sicurezza.

Software compatibility Nella architettura ESX, il SO guest interagisce solo con architetture INTEL x86. In realtà Vmware supporta un subset di x86-compatible OS, che sono testati attraverso il ciclo di sviluppo.

Questa astrazione fa delle VM, strutture robuste e trasportabili. La trasportabilità non è un grosso problema poiché tutti i file registrati dal guest OS sono memorizzati nel file che simula l'HD.

Versione e data template DATA Giuseppe Guadalupi PAGINA 34 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

ESX può anche essere usato effettivamente con le SAN, poichè supporta Qlogic e Emulex host bus adapter, i quali permettono ad un ESX computer di essere connesso ad una SAN e di vedere gli HD arrays sulla SAN.

4.2.3.1 - Software e procedure di admin

Service console Le funzioni di management e le interfacce sono implementate nella SERVICE CONSOLE. Essa include l'http, snmp e le API interfaces, per connettersi al ESX server. è installata come primo componente ed è usata per la gestione dell'ESX server: bootstrap, ESX installation e configuration. Permette la gestione del virtualization layer e del resource manager. Essa è implementata usando una distribuzione Liunx modificata.

Backup Per eseguire un backup vi sono due vie: Eseguire un normale backup sulle macchine con i software a disposizione Copiare i file di virtual disk e i “redo”. Con il primo metodo si ha il vantaggio di recuperare singoli o gruppi di dati Con il secondo, poiché viene praticamente copiata la macchina virtuale, si ha la possibilità di recuperare e mettere immediatamente in esercizio i servizi da una perdita completa del sistema, ma non si ha la possibilità di recuperare singole parti.

Resource management ESX ti permette di ottimizzare le performance della tua VM gestendo l'allocazione delle risorse: CPU time Memory space Network bandwidth Disk bandwidth ESX usa un meccanismo di condivisione proporzionale per allocare le risorse quando più VM stanno contendendo la stessa risorsa. La Network bandwidth è controllata con “network traffic shaping”. Per la CPU management si può specificare un min e un max in percento, che una VM può sfruttare della potenza di calcolo che deve essere dedicata per ogni VM, si possono specificare il n° max di CPU che devono essere condivise. Simile è la gestione della MEMORY: specificare una grandezza min e max, se deve essere uno spazio condiviso o no.

SERVICE CONSOLE: usa 2000 CPU condivise e 8% della minima potenza, di default (la Service Console non richiede un'intensiva computazione) lo spazio di MEMORY da assegnare dipende dal numero di VM, che fa variare il valore da 192MB a 512MB. 192MB per VM <=8 272MB per VM <= 16 384MB per VM <= 32 512MB per VM > 32

Versione e data template DATA Giuseppe Guadalupi PAGINA 35 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.2.3.2 - Resource variable

Ottimizzazione Prima di tutto effettuare un plan delle macchine virtuali da usare e le loro funzioni individuandone le risorse critiche. EX: per un WEB server la risorsa critica è la memoria, per un DB server la risorsa limitante è la DISK bandwidth. EXS schedula automaticamente load balancing sui sistemi multiprocessore. Può essere specificato un numero preciso di CPU da condividere o specificare HIGH, NORMAL, LOW. Di default è settato a normal, che è il doppio di low e la metà di high.

In un sistema a multiprocessore, si può anche restringere l'assegnamento delle VM ad un sotto insieme di CPU.

CPU Le variabili in gioco, come precedentemente accennato, sono: Min, Max calc-power e shared allocation. Il primo indica la potenza minima che il Resource Manager deve fornire ad una singola macchina nelle situazioni in cui le risorse scarseggiano. Il secondo è il limite oltre il quale non deve essere fornite potenza di calcolo in alcun modo. Il terzo è il numero di CPU condivise dalla CPU virtuale, maggiore è il numero di CPU condivise maggiore è il tempo di computazione (di contro altare si ha un minore sforzo delle CPU fisiche).

Memory La gestione della memoria contiene delle variabili simili a quelle della gestine della CPU, size min e max e shared allocation. Il sistema alloca dinamicamente un tot di memoria per ogni VM tra il max e il min basandosi su quella condivisa e su una stima del recente lavoro, è possibile specificare la quantità di memoria iniziale del Guest OS nel suo file di configurazione.

Versione e data template DATA Giuseppe Guadalupi PAGINA 36 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.2.4 - Template SunSolaris 10 su x86 Installare un sistema operativo SunSolaris su un computer ben dotato e prestante, non è una cosa molto difficile o complicata, ma quando si lavora in remoto utilizzando un sistema di virtualizzazione, cosa cambia?!? Per rispondere a questa domanda abbiamo installato SunSolaris su una vmachine x86, tenendo conto delle caratteristiche e compatibilità di entrambi i sistemi: vmware Infracstructure 3.1 e SunSolaris10.

4.2.4.1 - Creazione nuova vmachine L’amministratore del server vmwareESX si è preoccupato di creare una vmachine “SVLAB” avente come caratteristiche: 10Gb di memoria di massa, 512 Mb di RAM e i permessi necessari per l’accesso remoto.

Lavorare da un client vmware è molto vantaggioso; si ha la possibilità di consultare la documentazione su internet, bloccare o mettere in pausa l’installazione, monitorare le prestazioni del sistema e quant’altro lanciando semplicemente: VMware Virtual Infrastructure Client 2.0. Una volta loggati al sistema solo l’Amministratore potrà bloccarvi!!!

Figura 25 - VmwareClient 2.0

4.2.4.2 - Requisiti di sistema e configurazioni consigliate Configurazioni consigliate per memoria, swap e processore: Figura 26 - Requisiti di sistema Sistema x86 Dimensione Memoria per • A partire da Solaris 10 1/06, la dimensione della memoria

Versione e data template DATA Giuseppe Guadalupi PAGINA 37 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution l’installazione o consigliate è di 512 MB. La dimensione minima è di 256 MB l’aggiornamento • Per solaris 10 3/05, la dimensione della memoria consigliata è di 256 MB.La dimensione minima è di 128 MB Area di swap • 512MB è la dimensione predefinita. Requisiti per la CPU • È consigliato un processore a 120Mhz o più veloce.

La nostra vmachine è stata settata in questo modo: / → 4000 Swap → 512 /export/home → 5600 Queste dimensioni, sono state definite tenendo conto che questo è solo un template e che quindi la vera customizzazione, sarà fatta post-installazione da altri tecnici. La root è di 4 Gb, permettendo l’aggiornamento con altri pacchetti. L’area di swap è quella di default e la /export/home, la restante parte dei 10 Gb iniziali.

4.2.4.3 - Lista di controllo per l’installazione Usare la seguente lista di controllo per acquisire le informazioni richieste per l’installazione del sistema operativo Solaris è molto utile. Non è necessario acquisire tutte le informazioni richieste nella lista di controllo, ma è sufficiente inserire le informazioni applicabili al sistema da installare. Questa lista di controllo riporta le informazioni da acquisire per un’installazione iniziale.

Versione e data template DATA Giuseppe Guadalupi PAGINA 38 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 27 - Informazioni per un'installazione iniziale

Versione e data template DATA Giuseppe Guadalupi PAGINA 39 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Versione e data template DATA Giuseppe Guadalupi PAGINA 40 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Versione e data template DATA Giuseppe Guadalupi PAGINA 41 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Versione e data template DATA Giuseppe Guadalupi PAGINA 42 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Versione e data template DATA Giuseppe Guadalupi PAGINA 43 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Grazie a queste tabelle ci siamo fatti un’idea più chiara del sistema e di conseguenza abbiamo preso le nostre decisioni:

Versione installata: SunSolaris10 Basic Connessione di rete: nessuna Nome host: solaris Password di root: solaris , in modo che qualsiasi altro tecnico possa accedere e modificare la macchina a proprio piacimento. Installazione personalizzata con l’aggiunta dei pacchetti:  freeware comprension utilities, per installare i pacchetti di compressione;  freeware other utilities , per la gestione degli rpm;  freeware shells , per installare i vari tipi di shell compresa la bash;  GNU and open source documentation , per il man dei vari comandi  programming tools , perchè contiene il comando ldd richiesto dai vmware tools

Finita l’installazione, ci siamo preoccupati di patchare il sistema e d’installare i tool di vmware, utili per migliorare l’iterazione tra vmachine e os. Purtroppo patchando il sistema e installando i tool, qualcosa non andava, momentaneamente i tool giravano tranquillamente, ma al primo reboot, i tool non funzionavano più. Questo problema ci ha portati a reinstallare più volte il sistema sunsolaris effettuando prove di poco successo. Versione e data template DATA Giuseppe Guadalupi PAGINA 44 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Cercando su google abbiamo trovato un sito in cui erano scaricabili le patch di solaris compatibili con i vmware tools ( wotho.ethz.ch/ ESX _solaris/ )

Inventory →vmachine →vmwaretool Questo fa si che nel device lettore cdrom virtuale venga inserito un “cd” contenente il pacchetto completo per l'istallazione dei vmware tools. Montiamo il device #mount -F hsfs /dev/dsk/c0t0d0s0 /mnt e copiamo il pacchetto nella directory /tmp lo scompattiamo con i seguenti comandi #gzip -d /tmp/vmware-tools.tar.gz #tar xpvf /tmp/vmware-tools.tar entriamo nella directory vmware-distribution-tools/ e si è fatto partire lo script vmware- install.sh Usando le impostazioni di default.

Per installare le patches è stata creata una immagine iso contenente le patches da installare. L'immagine è stata caricata sul cdrom drive in modalità client. Montiamo il device come precedentemente illustrato. e copiamo la cartella delle patches nella directory /tmp. Usiamo il comando #patchadd PERCORSO_DELLE_PATCHES . per installare le patches. Al che notiamo che i vmware tools sono ripartiti al riavvio della macchina. Cosa che non veniva effettuata con le preced

4.3 - Network Security Monitoring (NSM)

Ci sono molte ragioni per cui si monitorano le reti. Due primarie sono: prevedere eventuali cambiamenti relativi ad una futura crescita e rilevare cambiamenti attuali sullo status del network. I cambi inaspettati possono essere quelli relativi ad un fallimento di un router o di uno switch, magari dovuto ad un tentativo di attacco da parte di un hacker con lo scopo di fornire accesso illegale alla rete o far fallire di proposito un link di comunicazione. Senza la possibilità di monitorare la rete, un amministratore non può anticipare e prevedere i problemi; solo cercare di risolverli dal momento in cui essi sono già accaduti. Senza questa abilità, l’amministratore può solo reagire quando già il problema è nato.

Versione e data template DATA Giuseppe Guadalupi PAGINA 45 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.3.1 - Monitoring di connettività: Una delle forme basilari di monitor sulla connessione è effettuato ogni giorno sulla rete; le connessioni operano propriamente quando gli utenti sono abilitati a fare il logon sulla rete. Se gli utenti non possono loggarsi, il team di supporto network sarà contattato al più presto. Ovviamente questo sistema non è tra i migliori. Semplici programmi offrono all’amministratore la possibilità di avere una lista di indirizzi ip. Questi indirizzi sono pingati periodicamente. Se esiste un problema di connessione, il programma metterà in alert l’amministratore secondo i risultati di una ping request. Questo sistema di monitoring sulla rete è tuttavia primitivo ed inefficiente. Difatti esso può solo determinare se c’è una comunicazione che “cade” fra la stazione monitor e la periferica “target”. Il fallimento, può riguardare un router, uno switch, un segmento di rete. Il ping request riesce a capire che la connessione è Down, ma non può determinare la locazione del problema. Controllando tutti gli hosts sulla WAN tramite questo sistema può portar via molte risorse. Se la rete ha 3000 hosts, pingare tutti i sistemi può portar via molte risorse di sistema. Un buon modo è pingare solo gli hosts importanti, ad esempio SERVER, Router, e switch, al fine di verificare la loro connettività. Il test del ping non ti daranno dati reali, a meno che le workstation non sono sempre lasciate attive. Di nuovo, questo metodo di monitorare dati dovrebbe essere usato solo se non ci sono altri metodi disponibili.

Versione e data template DATA Giuseppe Guadalupi PAGINA 46 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.3.2 - Monitoring del Traffico: Il monitoring del traffico è il metodo più sofisticato di network monitoring. Esso considera il traffico attuale dei pacchetti sulla rete e genera dei reports basandosi su di esso. Programmi come quelli utilizzati durante lo stage o ad esempio Windows NT Network Monitor, e Fluke’s Network Analyzer, sono esempi di questo tipo di software. Questi programmi non solo rilevano fallimenti su equipaggiamenti di rete, ma determinano, SE un componente è sovraccaricato o mal configurato. Lo svantaggio di questo tipo di programma è che esso normalmente lavora su un singolo segmento alla volta. Se si ha la necessità di filtrare dati di altri segmenti, il software di monitoring dev’essere “spostato” su questi altri segmenti. Questa operazione può essere facilmente effettuata con l’uso degli agents per i segmenti remoti di rete. Apparecchiature come switches e routers, hanno l’abilità di generare e trasmettere statistiche del traffico in quanto questa funzionalità, fa parte del loro sistema operativo. Quindi, in che modo i dati sono raccolti e organizzati in una maniera che possa essere utile all'amministratore della rete centralizzata? la risposta è: il protocollo di gestione semplice della rete, SNMP.

Versione e data template DATA Giuseppe Guadalupi PAGINA 47 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.3.3 - SNMP: SNMP è un protocollo che permette la trasmissine di dati statistici sulla rete verso una console centrale di Management. SNMP è un componente dell’architettura di management della rete. Questa architettura consiste in 4 maggiori componenti:

1. Stazione di Management : è l’interfaccia manager di rete. All’interno del sistema ha il compito di manipolare e controllare i dati che provengono dalla rete. La stazione di management, inoltre, mantiene un database di informazioni di management (MIB) estratte dalle periferiche che gestisce.

2. Management Agent: L’agent di management è il componente che è contenuto nella periferica che dev’essere controllata. Bridges, hubs, routers, e switch, possono contenere agenti SNMP che permettere il controllo da parte della stazione di Management.Il management Agent risponde alla stazione di management in due modi. In primo luogo tramite un POLLING, la stazione di management richiede i dati dall’agent e l’agent risponde con i dati richiesti. Il TRAPPING, invece è un metodo di prelievo ed analisi dati, designato per ridurre il traffico sulla rete ed effettuare processi sulle periferiche già monitorate. La stazione di management fa il polling all’agent a specifici intervalli, continuativi, il cui limite è settato sulla periferica controllata. Se la soglia, sulla periferica, è ecceduta, verrà inviato un messaggio di alert alla stazione di management. Questo elimina la necessità di fare il pool continuamente. Il trapping è una tecnica molto efficace e porta vantaggi su reti con un grande numero di periferiche che hanno bisogno di essere gestite. Esso riduce l’ammontare del traffico SNMP sulla rete e fornisce più banda per il trasfer dei dati.

3. Informazioni base di management (MIB): Il “Management Information Base” ha un database strutturato ed è residente su ogni periferica gestita. Il database contiene una serie di oggetti, che sono risorse dati filtrate sulla stessa periferica gestita. Molte categorie all’interno del MIB includono interfacce dati, dati TCP e dati ICMP.

4. Il Network Management Protocol: Il network management protocol è SNMP. SNMP è un protocollo di livello Applicazione, designato per comunicazioni dati fra la console management e management agent. Esso ha 3 possibilità “chiave”: GET, PUT, e TRAP. GET permette alla management console di fare un retrieving dall’agent. PUT, permette alla management console di settare valori su oggetti sull’agent. TRAP, operazione per cui il management agent invia dati alla stazione di management.

La parola chiave che dobbiamo ricordare è dunque Simple Network Management Protocol. Quando SNMP fu creato, esso fu designato per essere uno sistema a rapida terminazione , destinato ad essere sostituito poco dopo. Ma TCP/IP, è diventato uno dei maggiori standars nel management delle configurazioni internet-internet. Con il trascorrere degli anni, si è visto aumentare l’utilizzo dell’SNMP che ha permesso a sua volta l’espansione del management e del monitoring sulle periferiche. Uno dei risultati è stato il remote monitoring (RMON). Si tratta di una estensione di SNMP che offre la possibilità di considerare la rete per intero piuttosto che considerarne, una ad una, le periferiche che ne fanno parte.

Versione e data template DATA Giuseppe Guadalupi PAGINA 48 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.3.4 - Monitoring Remoto (RMON):

La probe raccoglie i dati remoti in un RMON. Una probe ha la stessa funzione di un Agent SNMP. Una proble ha delle specifiche di Remote monitoring, un agent no. Quando si lavora con RMON o SNMP una console di management centrale rappresenta il punto di raccolta dati. Una probe RMON è locata su ogni segmento della rete monitorata. Queste probes possono essere hosts dedicati, residenti su un server o inclusi in una periferica di rete standard che può essere un router o uno switch. Queste probes raccolgono dati specifici da ogni segmento e li rilasciano sulla console di management. Il redundant management console, fornisce 2 maggiori benefici ai processi di management della rete. Il primo è abilitare più di un amministratore di rete in differenti locazioni fisiche, in modo da gestire e monitorare la stessa rete. Per esempio, un amministratore di rete può essere a new york ed un altro a san jose. Nel caso di redundanza, si hanno due o più console di management. Se una delle 2 console fallisce, l’altra console può essere usata per monitorare e controllare la rete finchè la prima rete non è riparata. L’estensione RMON dell’SNMP procol crea nuove categorie di dati. Queste categorie aggiungono molti rami al MIB database. Una delle maggiori categorie saranno spiegate nella lista seguente:

Il gruppo di statistiche su ethernet Contiene statistiche filtrate per ogni sottorete monitorata. Queste statistiche includono contatori (che partono da zero e sono incrementali) per byte, pacchetti, errori e dimensioni frames. L’altro tipo di riferimento data è la index table. La tabella identifica ogni periferica ethernet monitorata permettendo ai contatori di tenere il conteggio per ogni periferica ethernet individuale. Il gruppo di statistiche ethernet fornisce una visuale del carico complessivo e della vita della sottorete. Esso effettua ciò misurando diversi tipi di errori, fra cui quelli comunemente legati al CRC, collisioni e pacchetti oltre e sotto la dimensione standard.

Gruppo di controllo storico Contiene una tabella di dati che registrerà campioni dei conteggi di gruppi di statistiche che si registrano durante un periodo di tempo prestabilito. Il tempo di default settato, per esempio, può essere di trenta minuti (1800 secondi). La dimensione di default della tabella è relativa a 50 entries. Il totale è dunque 25ore di monitoraggio continuo. Dopo che l’history è stata creata per specifici contatori, viene creata una nuova entry nella tabella, dopo ogni intervallo di tempo, finchè il limite di 50 entries non è raggiunto. Quindi viene creata una successiva new entry e quella più vecchia viene eliminata. Questi dati forniscono una baseline per la rete. Possono essere usati per paragonare ancora la baseline originale e quindi risolvere problemi o ancora, update della baseline a seguito di cambiamenti che si effettuano sulla rete.

Il gruppo Alarm Vengono usati specifici limiti chiamati “thresholds” (soglie). Se il contatore monitorato, supera questa soglia, viene inviato un messaggio specifico di allarme ad un utente. Questo processo, conosciuto come Error Trap, può automatizzare molte funzioni relative al network monitoring. Senza l’error Trap, una persona deve continuamente monitorare, in maniera diretta la rete, o aspettare che un utente identifichi il problema (quando si è già verificato). Con la funzionalità Error Trap, il processo di rete automaticamente invia un messaggio all’utente o al personale addetto al management della rete, segnalando che è avvenuto un problema sulla rete. E’ dunque ritenuto, l’error trap, un componente molto importante di troubleshooting preventivo. Versione e data template DATA Giuseppe Guadalupi PAGINA 49 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Il Gruppo Host Contiene contatori che segnalano la scoperta di ogni host sul segmento della sottorete. Alcune delle categorie, relative a questi contatori, possono basarsi su Pacchetti, Ottetti, Errori e Broadcasts. I tipi di contatori associati con essi possono essere per esempio, Pacchetti totali, Pacchetti ricevuti, ecc.ecc

Il gruppo Host TOPN E’ usato per preparare i report su un gruppo di hosts che mostrano una lista statistica basata su parametri di misura. Il miglior modo per descrivere questo gruppo è fornito da un esempio; Un report può essere generato dalla top ten di host che hanno effettuato maggior broadcast durante il giorno. Un altro report può essere generato dai pacchetti più trasmessi durante il giorno. Questa categoria fornisce un modo facile per determinare chi e quale tipo di dato solitamente fa parte del traffico che passa da quel determinato segmento.

Il Gruppo matrix Registra la comunicazione data fra hosts su una subnetwork. Questo dato è memorizzato in modalità Matrix (matrix form= a multi-dimensional table). Uno dei reports che può essere generato da questa categoria è quello relativo ad un host che fa utilizzo di un server, Ad esempio. Riconoscendo il “matrix order”, è possibile creare altri reports. Per esempio, un report può mostrare tutti gli utenti di un particolare server , mentre un altro report porta tutti i servers utilizzati da un host particolare.

Il gruppo di filtraggio (filter group) Fornisce un metodo che consente ad una console di management di istruire un Probe Rmon, affinchè esso filtri pacchetti, selezionati da una specifica interfaccia ad una subnetwork. Questa selezione è basata sull’uso di due filtri, il Data e lo STATUS filter. Il Data filter è designato per fare o non fare un match su particolari gruppi di dati, permettendo o meno il loro passaggio. Lo status filter è basato sul tipo di pacchetti individuati. In questo modo, per esempio è possibile identificare CrC packet o Valid Packet. Questi filtri possono essere combinati utilizzando “and” “and” per creare condizioni molti complicate. Il gruppo di filtraggio da la possibilità, all’amministratore di rete, di selezionare, selettivamente, differenti tipi di pacchetti al fine di un’analisi della rete e del troubleshooting.

Il Gruppo packet capture Permette all’amministratore di specificare un metodo da usare per catturare i pacchetti che sono stati inclusi all’interno del gruppo di filtraggio. Catturando specifici pacchetti, l’amministratore di rete può individuare dettagli esatti riguardanti i pacchetti interessati. Questo gruppo di paccketti inoltre, specifica la quantità del pacchetto individualmente catturato, ed il numero totale.

Il gruppo Eventi Contiene eventi generati da altri gruppi nel MIB database. Un esempio può essere quello di un contatoore che eccede la soglia indicata nell’alarm group. Questa azione deve generare un evento, all’interno dell’event group. Basandosi su questo evento, dev’essere quindi creata un’azione, come per esempio, l’esposizione di un messaggio di warning, che viene inviato alle persone inserite All’interno dell’alarm group, o pure avviene una creazione di entry nell’event table. Un evento è generato per tutte le operazioni di comparazione all’interno dell’RMON MIB extensions.

Versione e data template DATA Giuseppe Guadalupi PAGINA 50 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Il Gruppo Token Ring Contiene contatori specifici per reti token ring. Mentre molti dei contatori compresi nell’RMON Extensions non specificano il tipo di protocollo data link, le statistice e l’history group lo fanno. Esse sono particolarmente selettive per quanto riguarda il protocollo ethernet. Il token ring group crea contatori necessari a monitorare e gestire la rete token ring utilizzando RMON.

E’ importante ricordare che RMON è una estensione del protocollo SNMP. Specificatametne questo vuol dire che RMON aumenta le operazioni e le capacità di monitoring di SNMP, quest’ultimo invece, è necessario per RMON, affinchè esso possa operare su una rete. Come ultimo punto è importante mensionare che ci sono state delle revisioni recenti di SNMP e RMON. Esse sono chiamate SNMPv2 e RMONv2.

Versione e data template DATA Giuseppe Guadalupi PAGINA 51 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.3.5 - Soluzioni ai problemi: I problemi sono cose di tutti i giorni. Anche quando la rete è monitorata, l’apparecchiatura è affidabile, e gli utenti sono attenti, qualcosa può andare storto. Lo skill di un buon amministratore di rete, è concentrato sull’abilità di analizzare, di diagnositcare e correggere problemi, sotto la pressione di cadute sulla rete che causano mancanza di disponibilità, nelle risorse di lavoro aziendali. Vedremo alcuni suggerimento relative a queste tecniche nelle quali vengono inclusi alcuni strumenti di troubleshooting per la rete. Queste tecniche rappresentano degli efficienti strumenti per risolvere i problemi di rete. La prima cosa, fra l’altro anche la più importante, è usare l’engineering journal per prendere note. Ciò può definire un chiaro percorso per la diagnosi dei problemi. E possibile scoprire che cosa è già stato fatto e quindi riuscire a capire qual è la causa effettiva del problema. Una copia di queste note, deve essere inclusa alla risoluzione del problema, quando il troble ticket per il lavoro, è completo. I futuri troubleshooting per problemi simili, possono giovare positivamente da questo lavoro, così è possibile risparmiare tempo nel cercare tecniche risolutive già precedentemente applicate. Un altro elemento essenziale di troubleshooting preventivo è il labeling (etichettamento). E’ necessario etichettare ogni cosa, incluse le 2 fini del cablaggio orizzontale. Questa etichettatura deve includere il numero del cavo, la locazione in cui, eventuali altri cavi sono locati (nelle vicinanze) e l’utilizzo del cavo. Per esempio, si può pensare che il cavo venga utilizzato per Voce, data o video. E’ necessario etichettare ogni porta sull’hub, switch, router, evidenziare la locazione, lo scopo ed il punto di connessione; sono cose, queste che aiuteranno a risolvere i problemi con più facilità. In fine, tutti gli altri componenti collegati alla rete, devono essere, anch’essi, etichettati per Locazione ed Utilizzo. Con questo tipo di etichettatura, tutti i componenti possono essere locati ed il loro scopo sulla rete potrà essere definito senza grossi problemi. Il giusto labeling, usato con la documentazione di rete, creata quando la rete è stata costruita o aggiornata (update), darà una completa immagine della rete e relazionship di dati. Una reminder importante è che la documentazione, utile se “corrente”. Tutti i cambiamenti effettuati alla rete, devono essere documentati sia sulla periferica sostituita/aggiunta che sul foglio di documentazione usato per definire la rete completa. Il primo step nel troubleshooting di rete, è definire il problema. La definizione può essere consolidazione di differenti sorgenti. Una delle sorgenti può essere un trouble ticket o un report che proviene dall’helpdesk, che inizialmente identifica un problema. Gli strumenti di monitoring per il network possono fornire una completa idea sullo specifico problema e sulla eventuale soluzione legata ad esso. Altri utenti ed osservazioni possono fornire informazioni aggiuntive. La valutazione di tutte queste informazioni può fornire al troubleshooter una posizione più chiara per poter risolvere il problema, spesso, migliore rispetto a quella che si avrebbe riciclando informazioni relative ad altre sorgenti.

4.4 - MDM CISCO

Il Cisco DdoS Multidevice Manager 1.0 è un applicazione software che serve per gestire una visione consolidata di eventuali attacchi alla rete che attraversano le informazioni passando tra più guards e detectors , permettendo così di mitigare le minacce. Il Cisco DdoS Multidevice Manager 1.0 gira su un server Linux con queste specifiche:

Versione e data template DATA Giuseppe Guadalupi PAGINA 52 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 28 - Requisiti Hw per l'MDM

Requisiti software del server : • RedHat Enterprise Linux version 3 e 4 Il Cisco DdoS Multidevice Manager 1.0 supporta i seuenti dispositivi di sicurezza: • Cisco Guard XT, Cisco Traffic Anomaly Detector appliances • Cisco Guard and Cisco Traffic Anomaly Detector service modules Entrambi i dispositivi devono avere il software con la versione 5.1 Le principali caratteristiche del Cisco DdoS Multidevice Manager 1.0 sono: • Visualizzare in un’unica visione gli attacchi passati e in corso di tutte le zone • Visualizzare informazioni statistiche riportate per tutte le zone • Creare reports allegati • Sincronizzare informazioni di zona da un dispositivo ad un altro della rete • Attiva la ricerca di anomalie (attack mitigation) su tutti i guards della rete • Attiva il learning process su una o più zone sui detectors nella rete

Elementi che compongono il Cisco DdoS Multidevice Manager 1.0:

Detectors Ricevono copia del traffico di rete e mentre lo analizzano lo deviano sul percorso normale. Anomalie sul traffico indicano attacco.Quando si trovano queste anomalie entrano in gioco i guard per mitigare. Il detector è un dispositivo passivo che continuamente guarda per indicare se ci sono attacchi di Ddos riferiti a zone, come server, firewall interface, router interface.Analizza copie di tutto

Guards Ricevono il traffico deviato dalla rotta normale per analizzarlo.Se trova un anomalia, separa e droppa il traffico cattivo e reimmette nella rete solo il traffico pulito. (Funziona come un IPS Intrusion Prevention System)

Zones Server, client, detector ecc... una configurazione copiata per tutti => un nome per tutti. Una zona rappresenta un n° di elementi di rete p ne twork destination (come server farm) che tu vuoi selezionare Dector and Guard per protegerre da DDos. Si possono configurare dispositivi con zone multiple.

MDM Server Lega tutti i dispositivi della zona insieme. Mantiene un database entry per ogni dispositivo segnalato e ogni zona che configuri sul dispositivo attraverso il server MDM. Questo database offre l'associazione tra dispositivo e configurazione. Visualizza stato e statistiche.

Versione e data template DATA Giuseppe Guadalupi PAGINA 53 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Master Device E’ il dispositivo attraverso il qualel'MDM gestisce la configurazione di una zona.Ti abilita a creare o modificare una config zona con un processo "sinchronization".

Attacchi:

DDos Attacks Sono creati da individui che vogliono distruggere dei servizi e bersagliare la rete saturandola con traffico non necessario. DDoS attacks avvengono quando il malintenzionato lanciando dei programmi fa 100, 1000, non sospettosi host: ZOMBIES e TROJAN nel sistema.

Trojan E’ all'apparenza un innocuo eseguibile che agisce inaspettatamente facendo danni, prendono istruzioni da un master server guidato da un attcker che quando e come vuole lancia degli attacchi.

Zombie E’ uno script automatico che può inondare le risorse di un server di rete con richieste per servizi spartani.Questi attacchi possono compromettere l'attività del DNS.Un host di questo tipo non fa danno, tanti si.

Versione e data template DATA Giuseppe Guadalupi PAGINA 54 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.4.1 - Item Requirements

Figura 29 - Requisiti SW per l’MDM Item Requirements

Linux Server Software Linux Operating System Red Hat Enterprise Linux 4, 3. Preinstalled Applications The MDM RPM (RedHat Package Manager) requires a Linux server that was installed with a minimum RPM selection and has no preinstalled Tomcat, Java Virtual Machine (JVM), or MySQL applications. The MDM RPM loads these applications as part of the MDM installation process. Linux Server Hardware RAM 1 G. Free disk space. 40 G Client Browser Microsoft Internet Explorer 6.0 or higher (must support HTML, tables, cookies, Javascript, and frames). Monitor Recommend 1024 x 768 pixels minimum. Detector and Guard Version 5.1(5) or higher. operating software

La nostra implementazione usa una vmachine x86, con le caratteristiche sopra elencate.

Versione e data template DATA Giuseppe Guadalupi PAGINA 55 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.4.2 - Installazione MDM Una volta scaricata l’ultima versione dell’MDM RPM da sito www.cisco.com , si copia il file nel Linux Server e s’immette il comando: rpm -ivsh MDM-M.M-X.YY.rpm dove M.M è la version major number, X.YY il minor version number .

Prima di procedere con l’installazione, si deve tenere conto di questi 5 punti fondamentali: 1. Configurazione del firewall 2. Certificato tomcat 3. Utenti e gruppi LINUX 4. Tacacs, per gestire accessi 5. Hardening MySQL e User Account dopo installazione MDM

NOTA ->Nella documentazione sono stati riportati esplicitamente solo i punti 1 e 5, poiché sono quelli che devono essere seguiti alla lettera, per un sicuro e corretto funzionamento in rete. Gli altri sono reperibili direttamente sulla documentazione ufficiale nel file ConfigurationGuide.pdf alla pagina 32. I punti 2,3,4 non sono stati riportati perché dipendono dalle decisioni di amministrazione del Software.

1) Per instaurare una connessione con l’MDM, il firewall dev’essere configurato in questo modo:

• incoming connection 443 / tcp con richieste HTTPS Ssh (22/TCP) cn scambio di chiave tra detector e guards syslog (514/udp) x rx eventi dalla rete • Outgoing connection Device remote agent (RA) (1334/TCP) Network TIME Protocol (se installato) Terminal Access Controller Access Control System (TACACS, se configurato) 5) Per rafforzare (hardening) il sistema Cisco raccomanda di avviare il servizio MySql in un ambiente chroot chroot , ( change root) un metodo di sicurezza usato per isolare i limiti operativi di una applicazione e adottare le seguenti misure di sicurezza: • Cambiare la password di admin di MySql che di default è bianca. • Cancellare guest e utenti anonimi. • Creare un nuovo utente per gestire l’MDM back-end con una password forte, contenente caratteri speciali e alfanumerici. Questo utente avrà tutti i permessi per il “Riverhead” database. Considerare i seguenti step: 1) Configurare le proprietà della connessione sul back-end db. Aggiornare il file /Riverhead/Ofek/rsc/db.properties con nuovo utente e password. 2) Inserire il comando service backend restart per riavviare il servizio, in questo modo si applicano le nuove credenziali.

Versione e data template DATA Giuseppe Guadalupi PAGINA 56 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.5 - Mast

Il sistema MAST (Mediation Access & Services Termination) è stato sviluppato al fine di permettere l’erogazione di vari servizi di sicurezza verso sistemi che sono attestati in segmenti di rete critici e non completamente interconnessi con la RdG. Il sistema MAST è in grado di erogare le seguenti funzioni: Accesso mediato: piattaforma centralizzata per gli operatori che utilizzano una sessione terminal server disponibile con tutti gli applicativi necessari per lo svolgimento delle attività; la funzionalità di accesso mediato permette di garantire la sicurezza del dominio operativo mediante dei meccanismi di logging in grado di segnalare la presenza di attività malevole; Antivirus : le funzionalità di Antivirus sono erogate mediante l’utilizzo del software Trend Micro Office Scan Server VPN-FW: le funzioni di Firewall sono implementati dal software IPCOP, al quale sono stati inseriti vari addon per la realizzazione delle VPN ed il controllo del traffico Syslog : tramite l’utilizzo del software Kiwi, viene messa a disposizione del dominio operativo un’interfaccia Syslog NTP : tramite le funzionalità native di windows, viene effettuata la distribuzione dell’orario verso i server del dominio operativo WSUS : tramite l’applicativo WSUS vengono messi a disposizione del dominio operativo gli aggiornamenti dei sistemi operativi ; Web Proxy: tramite un addon del FW IPCOP, viene erogata una funzione di web proxy per l’accesso limitato a siti tecnici; Collector Sentinel: tramite un collector della piattaforma Novell Sentinel è possibile raccogliere e normalizzare gli eventi provenienti dal dominio operativo IDS : tramite la sonda IDS ISS Network Sensor è possibile rilevare attacchi verso l’infrastruttura MAST e verso il dominio operativo. Le funzioni sopra elencate sono corredate da un sistema di autodiagnostica e da un’interfaccia web di management per la realizzazione di operazioni semplificate di: Gestione Utenti Configurazione blade Ricerca log Il sistema MAST può essere realizzato mediante l’utilizzo di HW virtualizzato, HW fisico o soluzioni ibride.

Versione e data template DATA Giuseppe Guadalupi PAGINA 57 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 30 - MAST

4.6 - Ntop

Network management sta diventando un operazione sempre più complessa a causa della varietà dei tipi di rete e l'integrazione di differenti network media. Il costo del network management aumenta con l'aumento: delle dimensioni, della complessità e della eterogeneità. In questo scenario, uno strumento di automazione per il controllo delle risorse è essenziale per permettere al network management di svolgere il proprio lavoro. Ntop è un semplice, gratuito ed efficace strumento per monitorare e misurare il network traffic, inizialmente concepito da Luca Deri e Stefano Suin per controllare i problemi di performance sulla campus network dell'Università di Pisa. Senza l'aiuto di NTOP e tools simili, trovare le cause dei problemi di rete potrebbe essere estremamente tedioso.

La presentazione dei dati di NTOP è adatta ad ogni esigenza. Barre e grafici a torta sono usati per illustrare l'utilizzo dei protocolli e le statistiche sulla dimensione dei pacchetti. I dati raccolti durante il monitoring possono essere loggati in un file per futuri controlli usando qualunque applicazione di foglio di calcolo come “Calc” di OpenOffice o “Excel” di Microsoft.

Versione e data template DATA Giuseppe Guadalupi PAGINA 58 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.6.1 - Ambiente di collaudo L’ambiente di collaudo viene realizzato per simulare al meglio il sistema Ntop. Su un server HP Proliant ML 570 è installato il sistema Operativo VMWare ESX 3.0.1, sul quale è stata creata la seguente “service blade” di Ntop: • Ntop-SISTEMA (IP:192.168.0.1, SO: Linux Kernel 2.6.17-10): funzione di Network Monitoring Virtual Machine: • Due schede di rete • HD da 4G • Una CPU La prima scheda di rete (eth1) possiede un indirizzo IP cosi da permettere la gestione da remoto, tramite ssh, della macchina e di Ntop tramite interfaccia web; la scheda è collegata ad uno switch virtuale su una normale porta. La seconda scheda di rete (eth2) non possiede indirizzo IP ed è collegata ad una porta di SPAN dello switch virtuale, il compito di questa scheda è catturare i pacchetti che transitano nello switch cosi da poter essere analizzati.

Versione e data template DATA Giuseppe Guadalupi PAGINA 59 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.6.2 - Descrizione blade L'architettura di Ntop è mostrata dalla seguente figura. Figura 31 - Architettura Ntop

Il Packet Sniffer colleziona i pacchetti che, in seguito, sono passati al Packet Analyser per essere processati. Ogni qual volta le informazioni di traffico vengono richieste, il Report Engine legge le richieste per visualizzare le informazioni di traffico.

Versione e data template DATA Giuseppe Guadalupi PAGINA 60 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.6.3 - Packet Sniffer Il Packet Sniffer supporta differenti tipi di interfacce, includendo: PPP, Ethernet e Token Ring. Permette di catturare pacchetti, cosi da filtrarli prima che inizi il processo di analisi. Packet filtering usa la libreria libpcap, i filtri sono specificati usando semplici espressioni tcpdump. Il Packet Sniffer permette di abbassare la perdita di pacchetti durante fasi di traffico esplosivo; se la funzione di analisi e sniffing fossero collassate, durante una fase esplosiva di traffico si avrebbe un alta perdita di pacchetti, causata dall'overhead dell'analisi.

Versione e data template DATA Giuseppe Guadalupi PAGINA 61 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.6.4 - Packet Analyser Il Packet Analyser elabora un pacchetto alla volta. Il Packet headers sono analizzati in accordo al tipo di media interfacce usato. Questo perché gli headers dipendono dal tipo di interfaccia (Una Token Ring non ha le stesse caratteristiche di un'altra). Le informazioni sugli Hosts sono immagazzinate in una tabella di hash la cui chiave corrisponde ai 48 bit del MAC_address garantendone l'unicità, e permettendo a differenti network protocols di essere elaborati.

Ogni entry contiene diversi contatori che mantengono traccia dei dati inviati/ricevuti dagli Hosts, ragruppandoli in base al protocollo di rete supportato. Per ogni pacchetto, la Hash entry corrispondete al campo sorgente e destinazione; Essa viene ricercata o creata se non esiste. Non essendo possibile prevedere il numero dei pacchetti di ogni host gestiti da ntop, è impossibile avere una tabella di hash grande a sufficienza per inserirvi tutti i possibili hosts. Quando necessario ntop libera la host table, dalle entry obsolete, cosi da occupare uno spazio limitato di memoria senza inficiare le performance del sistema. Se ntop riceve pacchetti non-IP, i contatori sono aggiornati e i pacchetti sono scartati. Invece se vengono ricevuti pacchetti IP, saranno processati.

Versione e data template DATA Giuseppe Guadalupi PAGINA 62 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.6.5 - Report Engine L'attuale versione di Ntop possiede solo l'interfaccia web-base: Web-mode ntop aggisce come un HTTP server e permette agli utenti di analizzare le statistiche di traffico e gestire ntop con un semplice web browser.

Versione e data template DATA Giuseppe Guadalupi PAGINA 63 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.6.6 - Security Feature NTOP supporta nella ricerca alcuni problemi di rete includendo: • Uso di IP duplicati. • Identificazione di local Host in "promiscuous mode". • Rilevamento di mal configurazioni delle applicazioni. (grazie all'analisi dei dati sul traffico dei protocolli) • Misure sullo sfruttamento dei servizi • Identificazione di hosts che non usano uno specifico proxy. • Identificazione di hosts che usano protocolli non necessari. • Identificazione di routers • Uso eccessivo della banda • Rilevamento di workstations mal configurate che agiscono come routers • Misure sui protocol Local Network Traffic Map: o Questa funzionalità non è abilitata di default su ntop; per abilitarla si devono installare i seguenti pacchetti:  graphviz: libreria grafica (installabile con apt-get inserendo il cd di installazione)  gsfonts-x11: font per la creazione della mappa • gsfonts o xutils (scaricato a parte)  xutils-dev  libfs6  xfonts-utils  libxfont1  libfontenc1  xfonts-encodings

Versione e data template DATA Giuseppe Guadalupi PAGINA 64 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.6.7 - Servizi presenti sulla blade NTOP SSH, per la gestione remota della macchina. Proxy: aggiornamenti del sistema operativo. A causa dell'uso del proxy ISA Microsoft con autenticazione all'interno di Telecomitalia non è possibile effettuare gli aggiornamenti di Ubuntu. Soluzione: Software (ntlmaps-0.9.9.6) che permette di formattare le richieste, cosi che possano transitare per il proxy ISA; il software per gli aggiornamenti dovrà usare come proxy: “http://localhost:5865 ”

Problematiche: questo workaround comporta un uso considerevole delle risorse della macchina, che rischia di inficiare il normale funzionamento di ntop, per mancanza di risorse; si consiglia di usarlo solo quando il sistema si ritene debba essere aggiornato, o di installarlo in una macchina dedicata.

4.6.7.1 - Procedure per la corretta configurazione della macchina:

1. Configurare l'interfaccia di rete adibita allo sniffing affinché si avvii senza indirizzo IP e senza effettuare richieste DHCP.

o auto eth0 o iface eth0 inet manual o up ifconfig eth0 up o up ip link set eth0 promisc on

2. Non possono essere avviati due processi Ntop con stesso utente e porte di ascolto per la web-interface. 3. Far girare ntop come demone (disconnesso da qualunque shell) 4. Indicare l'interfaccia di sniffing. 5. Indicare la porta tcp per la web interface (di default è la 3000 in http)

4.6.7.2 - Comando di avvio ntop Avviare ntop (la 'w' minuscola indica la porta per il protocollo http, la 'W’ maiuscola indica il protocollo https, la 'u' indica l'utente con i cui privilegi ntop gira): ntop -d -i eth2 -w 0 -W 443 -u ntop

4.7 - Nfsen

E’ un' applicazione web-based per nfdump netflow tools. Permette di: • Visualizzare i dati di netflow: flussi, pacchetti e byte usando (RRD) • Navigare facilmente attraverso i dati neetflow • Processare i dati netflow entro del tempo specifico • Cronologia • Plugin propri per processare netflow in intervalli regolari • Diversi processi hanno bisogno di diverse interfacce per processare i tuoi dati. • Nfsen permette di tenere tutti i vantaggi convenienti della linea di comando usando direttamente nfdump e dando un riassunto grafico del flussi dati.

Versione e data template DATA Giuseppe Guadalupi PAGINA 65 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

• Nfsen è distribuito con licenza BSD.

Versione e data template DATA Giuseppe Guadalupi PAGINA 66 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.1 - Installazione Prerequisiti

• php e perl : nfsen è scritto in php e perl e gira su sistemi *nix • RRD tools per l'interfaccia grafica • Nfdump tool sono tool b-end che collegheranno e processeranno il netflow data.

Prima installazione Nfsen v1.2.4 ha una buona flessibilità nella visualizzazione delle directory. Per semplificare l’argomento, il layout di default archivia qualsiasi cosa, tranne le pagine html, sotto la BASEDIR (nel nostro caso -> /data/nfsen/). La figura sotto, mostra il layout di default con tutte le directory configurabili. Tutti i flussi sono archiviati sotto PROFILEDATADIR. Ottenendo così, maggior spazio disco per questa directory.

Figura 32 - Struttura delle Directory

Versione e data template DATA Giuseppe Guadalupi PAGINA 67 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Una volta installati i prerequisiti, si cambia la directory etc e si copia il template Nfen config file nfsen-dist.conf in nfsen.conf. Modifica nfsen.conf a tuo piacimento.

Versione e data template DATA Giuseppe Guadalupi PAGINA 68/93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.1.1 - Master Config file ############################## # # NfSen master config file # # Configuration of NfSen: # Set all the values to fit your NfSen setup and run the 'install.pl' # script from the nfsen distribution directory. # # You should not need to changes anything after NfSen is installed, # besides the NfSen plugins at the bottom. # When you make any changes in the plugins section, run 'nfsen reload' # to make sure nfsen-run gets notified about your plugins. # # Do not change any other settings after NfSen is installed. # otherwise you must rerun the install.pl script. # # The syntax must conform to Perl syntax. # ############################## # # NfSen default layout: # Any scripts, modules or profiles are installed by default under $BASEDIR. # However, you may change any of these settings to fit your requested layout.

# # Required for default layout $BASEDIR = "/data/nfsen";

# # Where to install the NfSen binaries $BINDIR="${BASEDIR}/bin";

# # Where to install the NfSen Perl modules $LIBEXECDIR="${BASEDIR}/libexec";

# # Where to install the config files $CONFDIR="${BASEDIR}/etc";

# # NfSen html pages directory: # All php scripts will be installed here. # URL: Entry point for nfsen: http:///nfsen/nfsen.php $HTMLDIR = "/var/www/nfsen/";

# # Where to install the docs

Versione e data template DATA Giuseppe Guadalupi PAGINA 69 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

$DOCDIR="${HTMLDIR}/doc";

# # Var space for NfSen $VARDIR="${BASEDIR}/var";

# # The Profiles stat directory, where all profile information # RRD DBs and gif pictures of the profile are stored $PROFILESTATDIR="${BASEDIR}/profiles";

# # The Profiles directory, where all netflow data is stored $PROFILEDATADIR="${BASEDIR}/profiles";

# # Where go all the backend plugins $BACKEND_PLUGINDIR="${BASEDIR}/plugins";

# # Where go all the frontend plugins $FRONTEND_PLUGINDIR="${HTMLDIR}/plugins";

# # nfdump tools path $PREFIX = '/usr/local/bin';

# # BASEDIR unrelated vars: # # Run nfcapd as this user # This may be a different or the same uid than your web server. # Note: This user must be in group $WWWGROUP, otherwise nfcapd # is not able to write data files! $USER = "netflow";

# user and group of the web server process # All netflow processing will be done with this user $WWWUSER = "www"; $WWWGROUP = "www";

# Receive buffer size for nfcapd - see man page nfcapd(1) $BUFFLEN = 200000;

# Netflow sources # Define an ident string, port and colour per netflow source # ident identifies this netflow source. e.g. the router name, # Upstream provider name etc. # port nfcapd listens on this port for netflow data for this source # col colour in nfsen graphs for this source # # Syntax: # 'ident' => { 'port' => '', 'col' => '' }

Versione e data template DATA Giuseppe Guadalupi PAGINA 70 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

# Ident strings must be 1 to 19 characters long only, containing characters [a-zA-Z0-9_].

%sources = ( 'upstream1' => { 'port' => '9995', 'col' => '#0000ff' }, 'peer1' => { 'port' => '9996', 'col' => '#ff0000' }, );

# # Low water mark: When expiring files, delete files until # size = max size * low water mark # typically 0.9 $low_water = 0.9;

# # syslog facility for periodic jobs # nfsen uses level 'debug', 'info', 'warning' and 'err' # Note: nfsen is very chatty for level 'debug' and 'info' # For normal operation, you may set the logging level in syslog.conf # to warning or error unless you want to debug NfSen $syslog_facility = 'local3';

# # plugins # plugins are run for each timeslot, after the roll over of new data files. # A plugin may run for any profile or for a specific profile only. # Syntax: [ 'profile', 'module' ] # profile: ',' separated list of profiles, or "*' for any profile # module: Module name. # The module follows the standard Perl module conventions, with at least two # additional functions: Init() and run(). See demoplugin.pm for a simple template. # Plugins are installed under # # $BACKEND_PLUGINDIR and $FRONTEND_PLUGINDIR

@plugins = ( # profile # module # [ '*', 'demoplugin' ], );

# # Notification module # The Notification module is an optional module. If you want your plugins to # notify any result by email, use this module. # Make sure you have installed Mail::Internet before using the module #

Versione e data template DATA Giuseppe Guadalupi PAGINA 71 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

# Use this from address $MAIL_FROM = '[email protected]';

# Use these recipients $RCPT_TO = '[email protected], [email protected]';

# Use this SMTP server $SMTP_SERVER = 'localhost';

1;

Modificato il file nfsen.conf, lanciare lo script install.pl nell’Nfsen distribution directory

./install.pl etc/nfsen.conf

Installando install.pl si ha:

• La creazione dell’ambiente Nfsen sotto BASEDIR • Copia dei file php/html in HTMLDIR • Creazione del profilo live • Preparazione del RRD database per il profilo live • Creazione e configurazione config.php

Dopo l’installazione, troverai l’nfsen.conf in CONFDIR. La documentazione è installata in DOCDIR. Per avere un Help link di questo documento nel Web-Fronter devi decommentare la riga 19 in navigation.php:

// print "Help\n";

Versione e data template DATA Giuseppe Guadalupi PAGINA 72 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.1.2 - Importare netflow esistenti

Figura 33 - Importare Netflow esistenti

Con un netflow esistente proveniente da nfdump, seguire i seguenti passi:

• Cd /BASEDIR/profiles/live • Copiare subito i dati esistenti in directory appropriate o fare softlink dalla directory sorgente ai tuoi flussi • Cd BASEDIR/bin e ricostruire il profilo live ./nfsen –r live

Il profilo live è installato con dati esistenti. Per verificare: ./nfsen –r live

Lo stato del profilo è settato su “rebuild” mentre cambierà automaticamente per OK la prima volta che il processo periodico di nfsen.run è eseguito.

4.7.1.3 - Start-Stop NfSen

NfSen fornisce uno script start-stop “nfesn.rc” in BINDIR. Creare un softlink nell’appropriata rc.d directory per questo file.. Per iniziare NfSen:

BINDIR/nfsen.rc start

Questo comando avvia tutti i processi nfcapd collegati al netflow data e l’nfsen-run in background aggiorna i tuoi profili, come i nuovi dati sono disponibili. Punta il browser su nfsen.php. (Tipicamente http:// yourserver/nfsen/nfsen.php ). Il processo di background nfsen-run come pure nfcapd si loggano in syslog. Nfsen-run è semplice, basta configurare, syslog priority “info” . Per le operazioni normali è possibile configurare la priorità “warning” . Per il debugging, usare “info” o “debug”.

Versione e data template DATA Giuseppe Guadalupi PAGINA 73 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.2 - Upgrading Nfsen Per aggiornare l’installazione di Nfsen:

1. Cambiare la directory dove si è spacchettizato nfsen. 2. Se si stà aggiornando nfsen v1.1, aggiungere la directory mancante nel config file esistente nfsen.conf..Per portare l’Nfsen v1.1 layout, aggiungere le seguenti linee dopo la variabile HTMLDIR:

# Where to install the binaries $BINDIR="${BASEDIR}/bin"; # # Where to install the NfSen Perl modules $LIBEXECDIR="${BASEDIR}/libexec"; # # Where to install the config files $CONFDIR="${BASEDIR}/etc"; # # Var space for NfSen $VARDIR="${BASEDIR}/var"; # # Where to install the docs $DOCDIR="${HTMLDIR}/doc"; # # The Profile stat directory, where all information and RRD DBs of the profile are stored $PROFILESTATDIR="${BASEDIR}/profiles"; # # The Profile directory, where all netflow data is stored $PROFILEDATADIR="${BASEDIR}/profiles"; # # Where go all the backend plugins $BACKEND_PLUGINDIR="${BASEDIR}/libexeec"; # # Where go all the frontend plugins $FRONTEND_PLUGINDIR="${HTMLDIR}/plugins";

3. Se vuoi riordinare la directory layout: • Stop nfsen: BASEDIR/bin/nfsen.rc stop • Muovi/Copia le directories nella nuova locazione desiderata e cambia la config per portare i cambiamenti. • Se separi PROFILESTATDIR e PROFILEDATADIR: Copia/muovi tutti gli *rrd *gif files come pure il profile.dat nell’appropriata directory PROFILESTATDIR/ Copia/muovi il filter.txt/history_filter.txt file e tutte le directory sorgenti nell’appropriata PROFILEDATADIR/

Esempio per profilo “port80”

cd $BASEDIR/profiles/port80

Versione e data template DATA Giuseppe Guadalupi PAGINA 74 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

mv *rrd *gif profile.dat $PROFILESTATDIR/port80 mv filter.txt ... $PROFILEDATADIR/port80

4. Run

./install.pl

5. Start Nfsen:

BINDIR/nfsen.rc start

Versione e data template DATA Giuseppe Guadalupi PAGINA 75 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.3 - Lavorare con Nfsen

Nfsen ha due differenti interfacce:

• Web-interface

• Command line interface

E’ più semplice usare l’interfaccia grafica, ma via CLI si può fare qualunque cosa.

4.7.3.1 - Views

Figura 34 - Tab Navigation Nfsen offre diverse visioni. Ognuna di queste, può essere selezionata usando i tabs in alto alla pagina. Quando il tuo browser punta a nfsen.php page, l’home è visualizzata di default e mostra un riassunto del corrente profilo. Le tre colonne mostrano la storia dei flussi, dei pacchetti e anche i bytes. Per selezionare un visualizzazione differente, ciccare sul grafico e automaticamente la visualizzazione cambia in Detailed per favorire una migliore analisi del netflow data. Se il profilo selezionato è un continuos profile, le pagine e i grafici sono aggiornate ogni 5 minuti.

4.7.3.2 - Profile

Un profilo è una specifica visualizzazione del flusso dati. E’ definito in base al nome, tipo e filtro, qualsiasi purchè sia accettato da nfdump. Il profilo minimo sempre disponibile è il live ed è usato per iniziare flussi senza filtri.Tu puoi tracciare e portare fuori qualsiasi profilo usando il menù estraibile nell’angolo in alto a destra della pagina web.

Versione e data template DATA Giuseppe Guadalupi PAGINA 76 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 35 - Select Profile Profile Types

Un profilo può essere del tipo History o continuous . Un history inizia e finisce nel passato e rimane statico. Non cresce e non scade. Un contunuous profile inizia nel passato e continua fino a quando il traffico è disponibile.Esso cresce dinamicamente e deve avere un valore di scadenza settato. I dati scadono o dopo un certo periodo di tempo o quando è raggiunta una certa misura.

Versione e data template DATA Giuseppe Guadalupi PAGINA 77 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Creare Profili

Figura 36 - Nuovo Profilo Ntop

Selezionare “new profile” entrare nel menù estraibile.

Completare il New profile. I tempi di start ed end sono inseriti automaticamente. Versione e data template DATA Giuseppe Guadalupi PAGINA 78 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 37 - Profilo creato Creazione del nuovo profilo

Quando il profilo è creato con successo, il processo costruito inizia il monitoring. In base al tempo in cui il profilo è iniziato, questo può prendere una mole considerabile di dati. Si può seguire il processo costruito ciccando su continue. Sul top dello Stat si vedrà la progress bar, che mostra in percentuale l’avanzamento del profilo.

Gestire i profili

Una volta creato il profilo, si possono cambiare le impostazioni di scadenza di un profilo continuo. Selezionando stat e ciccando sull’icona edit dell’appropriato valore di scadenza. Un profilo continuo termina quando raggiunge la data o la dimensione usata dal disco. Il monitorino termina ogni volta che uno dei due limiti è raggiunto. Il parametro che configura quanto detto è $low_water e si trova nel file nfsen.conf.

Figura 38 - Profilo cancellato

Per cancellare un profilo, ciccare sul cestino in alto all’angolo destro della tabella profilo. Si otterrà una risposta di questo tipo, che serve a confermare la cancellazione.

Figura 39 - Conferma di profilo cancellato

Versione e data template DATA Giuseppe Guadalupi PAGINA 79 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.4 - Navigation

Una dettagliata navigazione tra i flussi, si può ottenere visualizzando “detail” view. La pagina è divisa in due parti: la parte superiore permette la navigazione attraverso flussi dati come time slot o time window. La parte inferiore contiene tutti i controlli per i processi i netflow data del selezionato time slot o time window. Cliccando su qualsiasi grafico tra quelli nella parte superiore della pagina, si può vedere l’ingrandimento in tempo reale del flusso dati. In questo modo si può investigare sulla situazione corrente dei vari flussi per protocolli.

Figura 40 - Navigation Display Cliccando sui type graphs , sulla destra, il grafico principale viene sostituito da quest’ultimi. In questo modo è possibile cambiare il flusso in pacchetti o byte secondo i propri bisogni. Il tempo generato dal grafico può essere cambiato usando il menù list.

Figura 41 - Select time span

Versione e data template DATA Giuseppe Guadalupi PAGINA 80 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.4.1 - Seleziona un time slot o un time window

Un time-slot inizia ogni 5 minuti di un’ora, un ciclo (0,5,10,15 ecc) fino agli ultimi 5 minuti. Un time window contiene diversi time slot, quando entra in “Details view” una window scale di ogni giorno è così selezionata e vedrà le ultime 24 ore del tuo profilo. L’indicatore di tempo è posto al centro all’inizio e alla fine di queste 24 ore e il time window slot è settato per un time slot. E’ possibile vedere il tempo di un time slot selezionato o time-window sempre nel titolo della finestra del browser come pure il titolo del grafico principale. I time slot possono essere selezionati in diversi modi: • Ciccando nel grafico principale, per esempio quando vedi una vetta sospetta • Usando i controlli dell’indicatore di tempo

Figura 42 - Controlli di tempo > Next time slot: Advance time by 5 minutes. < Previous time slot: Go back 5 minutes. >> Advance time slot by a full time span of the graph. << Go back by a full time span of the graph. >| Go to the end of the profile. | Center time cursor in current graph. ^ Place cursor at peak, found within +/- 1 hour timespan of current cursor position.

Figura 43 - Tstart e Tend Nel campo Tstart è possibile modificare i tempi in modo da selezionare l’area d’interesse nel grafico. I grafici sono immediatamente aggiornati, quando si seleziona un differente time-slot . Per rendere visibile qualcosa sul grafico è preferibile usare un singolo time slot di più di 5 min. L’intervallo di tempo selezionato può essere modificato in due modi: il primo, sposta il cursore sul margine sinistro e delimita l’aria di flusso lavorando sul tempo di start come detto precedentemente, il secondo, delimita l’aria selezionando il margine destro della time window.

Modificando questi valori ci si sposta al confine destro di T end .

Versione e data template DATA Giuseppe Guadalupi PAGINA 81 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Il grafico principale sarà immediatamente aggiornato con la time window selezionata.

Figura 44 - Selected time window

Selected time window

Note:

• Un time-window dev’essere cambiato dalla selezione attuale in una nuova a sinistra del confine. La misura del time-window rimane invariata. • Per aggiustare la window size, seleziona una nuova finestra alla destra del confine.

Figura 45 - Tstart, Tstop

Resetta la finestra alle misure di default.

Quando si muove il time slot verso l’inizio del profilo, un’area grigia appare nel grafico e mostra la fine del flusso dati disponibile. Non esistono dati nell’area in grigio.Questo margine si muove dinamicamente, quando i dati scadono. L’andamento del flusso, nei grafici dei pacchetti e bytes sono ancora disponibili, come questi dati sono archiviati nell’RRD database.

Figura 46 - Border of available Data

Versione e data template DATA Giuseppe Guadalupi PAGINA 82 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.4.2 - Riassunto statistiche

Il riassunto delle statistiche, sotto al grafico principale dà una visione d’insieme circa flussi, pacchetti e traffici , il tutto considerando un determinato time slot o time window . La visione può essere modificata tra la somma totale del time window selezionato o il valore calcolato per secondi.

Figura 47 - Time Slot Statistiche

Ogni linea corrisponde ad un flusso sorgente configurato. Nel momento in cui, si è interessati ad una sola sorgente, bisogna rimuovere le altre ciccando sui checkbox. Questo disabilita o abilita questa sorgente in tutti i grafici e le rispettive statistiche. Figura 48 - Disabled sources ' Downstream' and 'Peer’

Versione e data template DATA Giuseppe Guadalupi PAGINA 83 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.4.3 - Graph Display Options Per osservare i dettagli d’ interesse, esistono due differenti opzioni: • Scale

o Linear y-axis o Logarithmic y-axiz • Tipo di grafico:

o Staked: tutte le sorgenti si avvicinano alla cima di ogni altra o Line: tutti i sorgenti sono indipendenti

Esempio di line graph:

Figura 49 - Line Graph

4.7.4.4 - Netflow processing

Una volta selezionata la time window d’interesse, tu puoi processare e filtrare il netflow data secondo i propri bisogni, usando il process form.

Versione e data template DATA Giuseppe Guadalupi PAGINA 84 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 50 - Netflow processing

• Seleziona il netflow sorgente per il processo (se ne possono selezionare anche multipli) • Inserire un netflow filter, usando la sintassi conforme all’nfdump es. ‘proto TCP’. • Selezionare qualsiasi opzione.

Cliccare ‘Process’.

La sorgente, il filtro, come pure tutte le opzioni del from sono compilate con appropriati comandi nfdump. Per convenienza una corta descrizione della sintassi del filtro e delle opzioni è spiegata di seguito. Maggiori dettagli sono disponibili nella pagina principale di nfdump.

4.7.4.4.1 - Filter Syntax

La sintassi del filtro è simile alle ben conosciute pcap library usate da tcpdump. I filtri possono generare diversi linee. Qualsiasi cosa seguita da ‘#’ è trattata come un commento ed è ignorato fino alla fine della linea. Virtualmente non c’è nessun limite per la lunghezza dell’espressione di filtro. Tutte le parole chiavi sono casi indipendenti a meno che non si siano notate altre circostanze. Qualsiasi filtro consiste di una o più espressioni expr. Qualsiasi numero di expr possono essere linkate insieme: expr and expr, expr or expr, not expr, ( expr ).

Expr can be one of the following filter primitives:

Any any Flows. Used as dummy filter. Use 'not any' to block all flows. protocol TCP, UDP, ICMP or PROTO num where num is the protocol number.

IP address [SourceDestination] IP a.b.c.d or HOST a.b.c.d with a.b.c.d as any valid IP address.

Versione e data template DATA Giuseppe Guadalupi PAGINA 85 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

[SourceDestination] defines the IP address to be selected and can be SRC DST or any combination of SRC and|or DST. Omitting SourceDestination is equivalent to SRC or DST .

[inout] defines the interface to be selected and can be IN or OUT . network [SourceDestination] NET a.b.c.d m.n.r.s [SourceDestination] NET a.b.c.d/num with a.b.c.d as network number, m.n.r.s as netmask or num as maskbits. The network may be given as a.b, a.b.c, where a B or C-class equivalent netmask is assumed.

Port [SourceDestination] PORT [comp] num with num as a valid port number. If comp is omitted, '=' is assumed.

Interface [inout] IF num with num as an interface number.

Flags flags tcpflags With tcpflags as a combination of: A ACK. S SYN. F FIN. R Reset. P Push. U Urgent. X All flags on. The ordering of the flags is not relevant. Flags not mentioned are treated as don't care. In order to get those flows with only the SYN flag set, use the syntax 'flags S and not flags AFRPU'.

TOS tos value Type of service: Value 0..255.

Packets packets [comp] num Limit the packet count in the netflow record.

Versione e data template DATA Giuseppe Guadalupi PAGINA 86 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Bytes bytes [comp] num Limit the byte count in the netflow record.

[comp] The following comparators are supported: =, ==, >, <, EQ, LT, GT . If comp is omitted, '=' is assumed.

AS [SourceDestination] AS num with num as a valid AS number.

Examples: tcp and ( src ip 172.16.17.18 or dst ip 172.16.17.19) tcp and ( net 172.16/16 and src port > 1024 and dst port 80 ) and bytes > 2048

4.7.4.4.2 - Options

La lista delle opzioni seguenti è usata per compilare l’nfdump command. Per maggiori dettegli vedere la pagina principale di nfdump.

Figura 51 - List Options List first N Flows Lista solo il primo N flusso selezionato nel time slot Nfdump optino: -c N aggregated Aggregare i flussi: SRC IP, DST IP, SRC Port, Dst Port Nfdump option –a Time sorted Divide tutti i flussi in base al primo tempo visto, quando legge i dati da multipli sorgenti netflow. Importante quando traccia un certo periodo di tempo. Nfdump optino: -m Long output Include TCP flags e campi tos in output Nfdump option: -o long

Figura 52 - Statistic options Stat top N Limita le statistiche per il primo N Nfdump optino: -n N Limit Racket/Bytes Dopo la creazione delle statistiche, si mostra solo l’ammontare di flussi, più o meno pacchetti/flussi che specificati Nfdump optino: +/-1 num +/- L num Packet/Bytes Crea le statistiche in bytes e pacchetti Nfdump optino: -S Long output Include TCP flags e tos field in output Nfdump option: -o long SRC IP Addr. Crea statistiche circa i parametric selezionati.

Versione e data template DATA Giuseppe Guadalupi PAGINA 87 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Nfdump optino: -s Figura 53 - Misure Netflow

Note: Dalla misura della rete, dipende il consumo di tempo e risorse per il processo di netflow.

4.7.4.4.3 - Default filteres I filtri possono essere archiviati in un file sotto BASEDIR/var/filters. Questi file saranno disponibili nel processing form. Il nome del filtro nel menu corrisponde al nome del file. I filtri usano la sintassi standard di nfdump.

Versione e data template DATA Giuseppe Guadalupi PAGINA 88 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Figura 54 - Filtri di Default

I filtri di default sono combinati con i filtri immessi nel text box. Entrambi i filtri sono linkati con logical ‘and’. Se un nuovo filtro è installato non è visibile nel menu dopo l’installazione bisogna aggiornare l’applicazione in cache spostandosi sul tab ‘stat’ e tornare indietro.

Versione e data template DATA Giuseppe Guadalupi PAGINA 89 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.5 - Bookmarks Mentre si lavora con Nfsen, è possibile salvare la situazione corrente per un uso futuro cliccando su boolmarks in alto a destra della pagina. Figura 55 - Bookmarks

Versione e data template DATA Giuseppe Guadalupi PAGINA 90 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.6 - Command line tool “nfsen”

La command line tool “nfsen” nella directory BASEDIR/bin lavora direttamente con la frontend. Può essere usata per creare e gestire profili così come si può fare con la frontend in “ Stat” tab. Usare il comando nfsen –h per visualizzare tutte le opzioni disponiili.

Figura 56 - CLI

Se crei o cancelli un profilo dalla command line, i cambiamenti non saranno istantaneamente visibili dal profilo menù. Cliccando nuovamente su “ Stat ” tab l’applicazione sarà aggiornata.

Versione e data template DATA Giuseppe Guadalupi PAGINA 91 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.7 - Plugins

Anche se Nfsen è un tool flessibile, si possono aggiungere differenti modi per processare e visualizzare il traffico netflow data. Questo è possibile utilizzando particolari plugin forniti da Nfsen. Ci sono due tipi di plugin: Backend e Frontend . I backend sono installati in nfsen-run, il background daemon, tiene traccia di tutti i profili e dei dati scaduti. I plugin sono moduli Perl caricati all’avvio di Nfsen o ricaricati ogni 5 min d’intervallo, quando nfcapd risistema i data files. Questo fa sì che i nuovi processi netflow data siano disponibili e pronti ad avviare qualsiasi azione si scelga. I backend plugin archiviano l’output dei dati processati i quali saranno visualizzati nel plugin di frontend. Un frontend plugin altro non è che uno script php che si aggancia alla web-frontend e visualizza qualsiasi risultato del processo backend.

4.7.7.1 - Installing Plugins

I plugin sono archiviati in BACKEND_PLUGINDIR e FRONTEND_PLUGINDIR e sono configurati in nfsen.conf La configurazione, è sotto questo file:

# # plugins # plugins are run for each timeslot, after the roll over of new data files. # A plugin may run for any profile or for a specific profile only. # Syntax: [ 'profile', 'module' ] # profile: ',' separated list of profiles, or "*' for any profile # module : Module name. # The backend plugin is a Perl module and follows the standard # Perl module conventions, with at least two additional functions: Init() and run(). # See demoplugin.pm for a simple template. # The frontend plugin is a PHP script with dedicated functions # __ParseInput(), as well as

@plugins = ( # profile # module [ '*', 'demoplugin' ], );

Una volta installati i moduli e configurati , si ricarica nfsen per integrare il plugin:

BASEDIR/bin/nfsen reload

Nota: eventuali errori si possono osservare dal syslog file.

Versione e data template DATA Giuseppe Guadalupi PAGINA 92 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

4.7.7.2 - Writing Backend Plugin

Scrivere un Backend plugin è facile come scrivere moduli Perl. Il template per un plugin deve rispecchiare l’esempio qui sotto:

# # package PluginName; use strict; use NfConf; sub run { my $profile = shift; my $timeslot = shift; # Format: yyyymmddHHMM

# Do whatever you want to do. } sub Init { return 1; }

1;

I plugin forniscono al massimo due funzioni: Init() e run (). Init() è richiamato, quando il plugin è caricato. Ovviamente qualsiasi plugin specifico richiede una inizializzazione di lavoro. Quando l’inizializzazione avviene con successo ritorna il parametro 1 e il plugin viene aggiunto alla lista insieme agli altri. Se ritorna 0 il plugin viene disabilitato e escluso dall’avvio con gli altri plugin. La funzione run() è chiamata periodicamente ogni 5 minuti, quando nuovi dati sono disponibili. Il primo parametro specifica il nome del profilo, il secondo timeslot il formato espresso nella forma 'yyyymmddHHMM'. Informazioni specifiche del profilo, possono essere riprese usando l’NfSen.pm e Nfconf.pm. Come esempio è possibile consultare il demo plugin “incmod” incluso nella distribuzione Nfsen.

# # Demo plugin for NfSen # # This plugin demonstrates the use of plugins # It searches for flows > 500000 packets and sends the output # using the Notification module package demoplugin; use strict; Versione e data template DATA Giuseppe Guadalupi PAGINA 93 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution use NfSen; use NfConf;

# # The plugin may send any messages to syslog # Do not initialize syslog, as this is done by # the main process nfsen-run use Sys::Syslog; Sys::Syslog::setlogsock('unix');

# Use the optional Notification module use Notification; my ( $nfdump, $BASEDIR );

# # Define a nice filter: # We like to see flows containing more than 500000 packets my $nf_filter = 'packets > 500000';

# # Periodic function # input: profilename # timeslot. Format yyyymmddHHMM e.g. 200503031200 sub run { my $profile = shift; my $timeslot = shift;

syslog('debug', "demoplugin run: Profile: $profile, Time: $timeslot");

my %profileinfo = NfSen::ReadProfile($profile); my $netflow_sources = "$BASEDIR/profiles/$profile/$profileinfo{'sourcelist'}";

# # process all sources of this profile at once my @output = `$nfdump -M $netflow_sources -r nfcapd.$timeslot '$nf_filter'`;

# # Process the output and notify the duty team

# The 2nd but last line contains the stat info of the processed flow:

Versione e data template DATA Giuseppe Guadalupi PAGINA 94 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

# e.g. Flows analysed: 61 matched: 61, Bytes read: 3168 if ( $output[-2] =~ /matched:\s+(\d+)/ ) { my $matched = $1; syslog('debug', "demoplugin run: $matched flows"); if ( $matched ) { notify("Packets > 500000: Profile $profile, Timeslot $timeslot", \@output ); } else { syslog('err', "Unparsable output line '$output[-2]'"); }

# .... more to come

} sub Init { syslog("info", "demoplugin: Init");

# Init some vars $nfdump = "$NfConf::PREFIX/nfdump"; $BASEDIR = "$NfConf::BASEDIR";

return 1; } sub BEGIN { syslog("info", "demoplugin BEGIN"); # Standard BEGIN Perl function - See Perl documentation # not used here } sub END { syslog("info", "demoplugin END"); # Standard END Perl function - See Perl documentation # not used here }

1;

4.7.7.3 - Testing backend plugin

Versione e data template DATA Giuseppe Guadalupi PAGINA 95 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Prima d’installare il backend plugin in nfsen-run, testarlo con testPlugin uno script disponibile da BASEDIR/bin. Il test script permette di testare il plugin con quaslsiasi profilo e timeslice disponibile.

./testPlugin -p -P -t

4.7.7.4 - Writing Frontend Plugins

Writing Frontend Plugins è come un facile script php. Il template per un plugin deve considerare l’esempio qui sotto. Ogni funzione è chiamata con un univoco plugin_id che identifica il plugin stesso. Esso può considerare e modificare quanto creato nei forms. Esempio “definizione di un campo d’input”:

Questo permette di distinguere tra diversi plugin e previene che essi coincidano con nomi di variabili nel web-forms.

Esempio template:

/* * demoplugin frontend plugin template */

// Required functions /* * This function is called prior to any output to the web browser and is intended * for the plugin to parse possible form data. This function is called only, if this * plugin is selected in the plugins tab */ function demoplugin_ParseInput( $plugin_id ) {

// Set possible warning or error message $_SESSION['warning'] = "Warning set by demo plugin!"; $_SESSION['error'] = "Error set by demo plugin!";

// Parse any GET[''] or POST[''] vars

} // End of demoplugin_ParseInput

/* Versione e data template DATA Giuseppe Guadalupi PAGINA 96 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

* This function is called after the header with the navigation bar have been sent to the * browser. It's now up to this function what to display. * This function is called only, if this plugin is selected in the plugins tab */ function demoplugin_Run( $plugin_id ) {

print "

Hello I'm the demo plugin with id $plugin_id

\n";

} // End of demoplugin_Run ?>

Un frontend plugin è riconoscibile dall’appropriato tab nella toolbar:

Figura 57 -Plugin

4.7.7.5 - Optional Modules Non sono richiesti optional modules da Nfsen comunque sempificano la vita quando scrivi plugins.

Notification pm I plugins devono produrre alcuni output per essere inviati a dovere raggiungendo analisi o richieste di alcune azioni. Questo modulo permette d’inviare un email con una sigola linea:

Versione e data template DATA Giuseppe Guadalupi PAGINA 97 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution notify(, ); i parametri di configurazione, come From , To e SMTP server sono definiti nel master nfsen.conf.

Example: nfsen.conf: .... # # Notification module # The Notification module is an optional module. If you want your plugins to # notify any result by email, use this module. # Make sure you have installed Mail::Internet before using the module # # Use this from address $MAIL_FROM = '[email protected]' ;

# Use these recipients $RCPT_TO = '[email protected]', [email protected]" ;

# Use this SMTP server $SMTP_SERVER = 'localhost' ;

Somewhere in your plugin: use Notification; ...

@output = some command; notify("Suspicious Flows found", \@output);

Versione e data template DATA Giuseppe Guadalupi PAGINA 98 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

5. Conclusioni

Il corso “Telecommunication Manager” proposto dal centro Elis, è una mossa vincente per tutti i giovani che si affacciano al mondo del lavoro. Appena diplomato, la mia visione su questo argomento, era molto limitata e superflua. Le scuole superiori statali, non permettono una stretta collaborazione con le aziende e quindi ad un giovane risulta difficile immaginare qual’è la realtà lavorativa di oggi. Quanto appreso nel primo anno di corso è stato molto utile e propedeutico ai fini d’inserimento in azienda. Le materie svolte, seguono l’onda delle nuove tecnologie NGN (Next Generation Network): le competenze acquisite sui curriculum Cisco, i mini-corsi ad ampio raggio (dalla programmazione, all’organizzazione di DB), i progetti commissionati da aziende esterne, il lavoro in team-working e soprattutto l’esperienza di dirigenti che con passione ed entusiasmo hanno trasferito le loro conoscenze a noi giovani “apprendisti”, fanno del mio inserimento in Telecom, un momento di crescita professionale e umana. Per un giovane appena diplomato, una grossa azienda come Telecom è solo un sogno. Entrare a far parte di essa, oltre ad essere una gran bella soddisfazione significa giocare su tre piani di attacco: sacrificio, impegno e responsabilità. Nei 6 mesi di stage abbiamo avuto modo di conoscere parte delle infrastrutture tecnologiche, il loro funzionamento ed i servizi supportati.

Versione e data template DATA Giuseppe Guadalupi PAGINA 99 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

6. Glossario

A4AF Asked for (4) another file: contatto per un altro file. È la sigla che, nella colonna di stato, appare accanto ad una fonte potenziale che al momento è resa indisponibile perché già contattata per un altro file. Difatti in eMule non è possibile contattare la stessa fonte per più file. Le opzioni di proprietà download aiutano l’utente a spostare fonte da un file ad un altro.

Adunanza Adunanza è una mod oramai diventata l’eMule "ufficiale" di chi ha Fastweb. Tale mod utilizza una speciale rete Kad denominata Kadu che permette agli utenti Fastweb di scaricare a velocità anche più elevate del normale. Molti modder hanno definito la Mod non regolare in quanto implementa funzioni che forzano la ratio dei client non adunanza a 1:1. Tale eventualità è direttamente regolamentata dall’eMule–Project: Guidelines for the Mod Forum and Subforums . Si legge infatti che fra le regole fissate c’è il divieto assoluto di implementare funzioni che siano negazione manuale di download o upload. Tale eventualità falsa quella che sarebbe la naturale ratio di sistema. Ratio globale che pur rimanendo di 1:1, subisce una forte sperequazione fra gli utenti adunanza ed il resto del network.

AICH Acronimo di Advanced Intelligent Corruption Handling . Gestione Avanzata Intelligente della Corruzione (dei files). Si occupa di verificare ogni singolo chunk (porzione di file da 180k) e di scartarlo in caso di presenza di dati corrotti. Il suo funzionamento è integrato e non sostituisce il controllo ICH. Il vantaggio è quello di poter recuperare piccole porzioni di file senza dover eliminare un’intera parte scaricata (9.28MB) in caso di pochi kb corrotti.

Amule aMule sta per all–Platforms Mule: mulo multipiattaforma. La caratteristica di aMule è quello di essere sviluppato parallelamente per la quasti totalità dei sistemi operativi: vengono rilasciate versioni compatibili per Windows, Linux, OpenBSD, Mac ed altri. La scelta degli sviluppatori è quella di seguire le linee guida dell’eMule–Project, focalizzandosi sulla possibilità di usare un’unico client per tutte le piattaforme esistenti.. Nei fatti aMule è diventato il mulo più utilizzato dagli utenti Linux. Per affidabilità, prestazioni e vivacità degli aggiornamenti oggi è da considerare la migliore alternativa ad eMule ufficiale, soprattutto nel caso in cui non si usi un sistema operativo Windows, ed allora più che alternativa diventa quasi un obbligo.

Auto Hard Limit L’auto Hard Limit è una feature presente in alcune MOD per migliorare la gestione delle fonti. Con questa funzione si lascia ad eMule il compito di impostare in modo automatico un limite al numero di fonti globale e di controllare che non sia mai superato. In questo modo si permette agli utenti di scaricare con maggiore facilità, senza preoccuparsi del numero di fonti contattate.

Versione e data template DATA Giuseppe Guadalupi PAGINA 100 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Badwolf upload Il badwolf upload, sviluppato dal modder italiano Badwolf63, è una feature ormai presente in quasi tutte le mod e serve a migliorare la gestione dell’upload. Se la banda di upload messa a disposizione è superiore a 10KB/s, vengono tenuti aperti 3 "finti" slots in memoria (se la banda è inferiore a 10 KB/s ne viene aperto solo 1), di modo che ogni volta che termina un upload, la banda viene immediatamente redistribuita tra questi slot. In questo modo si riducono i tempi d’attesa per passare dall’upload di un utente a quello del successivo e si ottiene un uso più lineare della banda in invio, così che venga aumentata la quantità di dati medi inviati in una sessione di eMule.

Ban In inglese To Ban sta per bandire , vietare determinate azioni. In ambito telematico il termine ban vuol dire impedire ad un client determinate azioni verso un altro client. Il motivo principale è quello di impedire che determinati client maligni possano inficiare il funzionamento di un server, di un programma, di un client buono. Con riferimento ad eMule, il ban è effettuato verso client malevoli che agiscono nel network per impedire il funzionamento dei client buoni .

Blacklist I server eD2k possono decidere, per vari motivi, di impedire la connessione da parte di alcuni client. L’elenco dei client a cui la connessione è vietata si chiama appunto Blacklist, di conseguenza i client in tale lista sono detti "blacklisted". I motivi più frequenti per cui si viene inseriti nella blacklist sono un numero troppo elevato di tentativi di connessione o il possesso di ID basso.

Bug Termine inglese per cimice, verme, scarafaggio. Nel linguaggio di programmazione indica un errore di codificazione del programmatore che provoca mal funzionamento del software.

Chuk Un Chunk è una parte di file. eMule trasferisce e riceve i file in chunk da 180KB ciascuno. La dimensione minima per calcolare l’hash parziale è di 9.28MB. Praticamente, se si possiede un file di 30MB eMule lo invierà in 4 parti separate, in ordine sparso. Tre di queste parti avranno dimensione 9.28MB, la quarta avrà dimensione 2.16MB. Ciò avviene per ottimizzare la distribuzione dei file nel network.

Codec Programma che si occupa della co dificazione e dec odificazione di formati audio e video compressi. Esistono vari tipi di codec che permettono diverse modalità di compressione, e conseguenti rapporti qualità / peso di un file.

Collezione Funzione che consente di creare una lista di collegamenti ed2k riferiti alle parti in cui è stato suddiviso un file eccessivamente lungo, o ad una lista di file diversi collegati fra loro da un nesso

Versione e data template DATA Giuseppe Guadalupi PAGINA 101 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

univoco. Una collezione è riconoscibile dall’estensione *.emulecollection .

Completamento automatico Funzione che, se attivata, consente la memorizzazione delle parole inserite nella maschera di ricerca di eMule ed il relativo auto completamento in fase di digitazione. Equivale alla cronologia ricerche. Le parole digitate sono memorizzate nel file AC_SearchStrings.dat conenuto nella directory config.

Crediti In eMule i crediti rappresentano un differenziale incrementale della priorità di coda di un client che richiede un file verso un altro client suo debitore. Per vantare un credito nei confronti di un altro client è necessario che questo abbia scaricato da noi precedentemente. In questo modo possiamo pretendere la restituzione del favore entro 5 mesi dalla nascita del credito.

Cross Posting Mettere la propria richiesta in più parti di un forum. Totalmete inutile, serve solo a intasare il database, ed è fortemente odiato e criticato dagli utenti del forum. eD2K link Collegamento che identifica in modo sicuro ed univoco un file nelle rete edonkey. E’ possibile creare un link eD2k con l’opzione di aggiunta fonte. In questo caso verrà inserito anche l’ip di riferimento del creatore del link, in modo tale che questo venga contattato immediatamente da chi utilizza il link. E’ anche possibile inserire l’hash AICH ed evitare a priori il download di parti corrotte. eMule eMule è un client Peer To Peer (P2P) per rete eD2k, ideato nel 2002 da un certo Merkur. Sviluppato in C++ per ambienti Microsoft, è un programma Open Source, quindi a codice sorgente disponibile. La qualità del programma e la disponibilità del codice sorgente hanno fatto crescere fin da subito l’interesse di molti programmatori per il client. Tanto da portare alla formazione di una delle più vaste comunità di utenti programmatori e utilizzatori mai vista per la rete. eMule è un programma completamente gratuito, non contiene spyware, malware o altre cose del genere. La comunità che gravita attorno ha fin da subito colto l’occasione per programmare propri eMule personalizzati, presto definiti Mods (versioni modificate). Lo sviluppo congiunto del team ufficiale e dei modders fa di eMule uno dei programmi con maggior tasso di crescita del panorama software degli ultimi tempi. eMule Plus eMule Plus è una ex–mod di eMule, staccatasi dal progetto ufficiale da eMule 0.30. Più precisamente è un Fork: un progetto indipendente dalle sue origini. Segue oggi una linea di sviluppo a sé sante e ad oggi presenta un numero di opzioni inferiore rispetto ad eMule ufficiale, si distingue però per solidità e prestazioni.

Versione e data template DATA Giuseppe Guadalupi PAGINA 102 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Fake Termine inglese per definire un falso, non valido. Si utilizza questo aggettivo in relazione ad un file il cui nome non corrisponde al contenuto.

Feature Configurazione o caratteristica di un programma. Le features di un programma corripondono a tutte le principali operazioni che client, per le quali l’utilizzatore svolge una funzione decisionale rilevante.

File Sharing Dall’inglese "To share" : dividere in parti uguali, spartire equamente. Condivisione di risorse all’interno di una rete. Emule è un programma per il file sharing. E’ ormai luogo comune identificare la dicitura "File Sharing" con la condivisione di file via P2P.

ICH Intelligent Corruption Handling: gestione intelligente della corruzione(dei files). Sistema che consente di eliminare e riscaricare una parte di file corrotta. Funziona in via autonoma e sussidiaria al AICH.

ID L’ID è un numero identificativo dei client di eMule. L’ID è calcolato in base all’indirizzo IP del client che identifica, pertanto cambia ogni volta che cambia l’indirizzo IP. In una situazione ottimale un client A ha l’ID alto. Questo vuol dire che per qualsiasi altro client della rete è possibile comunicare con A risalendo al suo indirizzo IP partendo dall’ID. In casi particolari non è possibile assegnare un ID alto e viene quindi assegnato un ID basso che rende più difficoltoso (ma non impossibile) l’utilizzo della rete. Il problema dell’ID basso riguarda soprattutto gli utenti di reti locali (vedere a riguardo le voci: Router, NAT, Port Forwarding). Non va confuso con lo userhash (v.).

Id Alto È la condizione ottimale che consente ad emule di essere contattato dall’esterno sulla porta tcp. Essa dipende da vari fattori fra cui la corretta impostazione di emule e di eventuali firewalls o routers dietro cui il programma gira. Si oppone all’ id basso.

Irc Internet Relay Chat. Servizio che consente agli utenti di comunicare privatamente o pubblicamente in tempo reale. eMule ha un client IRC integrato utilizzato per collegare a canali di help gestiti direttamente dall’eMule–Project.

ISP Trasversal Questa feature cripta i pacchetti di eMule per evitare che siano intercettati dai filtri anti–p2p. Cripta solo i dati tra due mod che implementano la stessa versione dell’ISP Traversal, mentre verso gli altri client e verso i server le comunicazioni sono in chiaro. È incompatibile con il Protocollo di Offuscamento che di fatto l’ha reso obsoleto.

Versione e data template DATA Giuseppe Guadalupi PAGINA 103 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Kademila Kademlia è un protocollo Peer–To–Peer ideato da Petar Maymounkov e David Mazi`res della New York University con lo scopo di creare una rete decentralizzata di PC che possano comunicare fra loro senza bisogno di un server centrale.

Leecher Sanguisughe, versioni di eMule modificate (bad mods) per abbassare l’upload fino a zero.

Link Creator Strumento per generare collegamenti ed2k in vari formati. Link Creator è un tool esterno ed indipendente da eMule.

Minimule Con emule ridotto a icona è una piccola finestra che contiene pochi dati essenziali: stato della connessione, velocità di upload e download, files completati, spazio libero su disco.

MobileMule MobileMule è un progetto pilota dell’eMule–Project. È un piccolo programma in Java che permette il controllo remoto del proprio client p2p direttamente da cellulare sfruttando una connessione GPRS. Il programma è tuttora in versione Beta e funziona su un numero limitato di telefoni cellulari.

MOD eMule è un progetto open source: i sorgenti sono disponibili a tutti e chiunque può modificare il programma e crare un nuovo client con caratteristiche diverse. Questi client, si chiamano MOD . Le MOD possono introdurre una grafica diversa, più funzioni, impostazioni particolari. Cercano di andare oltre le funzionalità del client ufficiale rispondendo ad esigenze di nicchia degli utilizzatori. Le MOD non danno vantaggi diretti rispetto alla velocità. I vantaggi che se ne possono trarre sono derivati dalla maggiore rispondenza alle esigenze personali dell’utilizzatore, che può trarre maggior beneficio dall’uso di una versione modificata. Per evitare che nelle MOD di eMule siano introdotte funzioni pericolose per la vita del network, il team ufficiale impone regole precise ai modder. Senza dimenticare che, essendo eMule un programma Open Source, i suoi sorgenti sono modificabili e redistribuibili a patto che venga mantenuta la licenza GPL al nuovo client.

Modalità invisibile Questa feature, presente al momento solo in alcune MOD, permette di far scomparire l’icona di eMule dalla barra delle applicazioni, mediante una combinazione di tasti. E’ una funzione che risulta utile quando più di una persona usa il computer e non si vuole far vedere cosa si sta scaricando. Ciò non di meno, si consideri che il processo emule.exe continuerà a comparire fra quelli attivi nel task manager.

Napster Napster, nato nel 1999 per opera di Shawn Finning, fu il primo grande programma di file sharing. Basato su un sistema di server, ebbe un enorme successo, tanto da arrivare alla cifra di 1,6 milioni di persone collegate nello stesso momento,nel febbraio 2001. Molti associano al successo di Napster, il successo del formato audio MP3.

Versione e data template DATA Giuseppe Guadalupi PAGINA 104 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Il suo enorme seguito fu anche la sua rovina. Attirando su di sè gli occhi delle major, dopo varie controversie legali fu costretto a chiudere e a pagare un totale di 36 milioni di dollari per danni. Gli sviluppatori dovettero trasmormarlo in un Music Store Online. Il progetto fu venduto nel 2002 per 8 milioni di dollari e trasformato in un jukebox online a pagamento.

NAT NAT (Network Translation Protocol) è una tecnica implementata solitamente da router e/o firewall che permette a tutti i computer di una rete locale di connettersi ad internet. Affinché ciò sia possibile la periferica che attua il NAT deve conoscere i protocolli usati dai computer per comunicare. Solitamente i protocolli eD2k e KAD usati da eMule non sono riconosciuti e ai client viene assegnato ID basso. Per evitare questa situazione si ricorre al Port Forwarding (v.) o, più recentemente, al NAT–Traversal (v.).

NAT Traversal (NAT-T) NAT Traversal (NAT–T) è una funzione che permette la comunicazione tra client anche questi sono nascosti da un NAT (v.), evitando quindi di assegnare ID basso.

Node Peer con un Hash ID.fisso

Offuscamento del protocollo L’offuscamento del protocollo è una caratteristica di eMule aggiunta a partire dalla versione 0.47b per venire incontro alle esigenze di tutti quegli sfortunati utenti rallentati o bloccati dal loro provider (es. Libero), che si sono presi la libertà di decidere cosa e quanto un loro abbonato può e non può fare. Se si attiva questa opzione eMule cerca di "nascondere" i dati che invia e riceve quando comunica con altri client e server in modo da impedire che qualcuno analizzando i pacchetti possano riconoscerli come provenienti dal programma emule. Questo sistema non è stato creato per rendere "anonimi" o per rendere "invisibili" anche perchè emule richiede un collegamento diretto con ogni utente che possiede il file che si vuole scaricare e perciò nascondersi è impossibile. L’unico risultato dell’offuscamento è che i dati spediti, per uno che li vede passare sul filo del telefono, sembreranno "random" cioè cose a caso senza significato. L’offuscamento una volta attivato funziona per i protocolli ed2k TCP e UDP, Server TCP e UDP, Kad TCP. I pacchetti Kad UDP non sono ancora offuscabili per motivi di compatibilità col passato.

Open Source Il termine Open Source (sorgente aperto) associato allo sviluppo software, indica quella particolare via di implementazione di un proramma in cui il sorgente è reso disponibile dagli sviluppatori principali, affinchè chiunque possa modificare ed implementare nuovo codice. La strategia di sviluppo si fonda sul libero collaborazionismo dei "colleghi" programmatori, che spontaneamente, incentivati dalla disponibilità del sorgente, decidono di entrare nel progetto promuovendo modifiche e sviluppi al programma. Tale procedura di sviluppo software ha degli indiscussi vantaggi: 1 – Controllo diffuso del codice sorgente con maggiore probabilità di prevenzione bug. 2 – Sviluppo tanto più rapido quanto maggiore è il numero di sviluppatori che decidono di partecipare. 3 – Crescita continua del software. La disponibilità del sorgente permette a chiunque ed in qualsiasi momento di apportare modifiche. 4 – Contenimento dei costi di ricerca e sviluppo, dato che il più delle volte la partecipazione è del tutto volontaria. 5 – Margini potenzialmente alti, dato che un programma ad alta qualità può essere facilmente piazzato nel mercato degli utilizzatori non programmatori.

Versione e data template DATA Giuseppe Guadalupi PAGINA 105 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Peer Guardian Peer Guardian, sviluppato da Phoenix Labs, è un software Open Source di filtraggio ip utile per tutelare la propria privacy informatica. Si fonda su un filtro ip ben strutturato e frequentemente aggiornato (basato sulle liste di Blocklist.org) che blocca, a livello di kernel, quasi un miliardo di indirizzi ip potenzialmente pericolosi (compresi quelli di compagnie anti–p2p, multinazionali del settore informatico, fake, major, ecc..) e integra anche un sistema di blocco HTTP per le pagine web ritenute nocive. È inoltre un software leggero e per nulla invadente,che lavora in autonomia in background.

Port Forwarding Nelle reti informatiche il Port Forwarding è una regola NAT (v.) che stabilisce come indirizzare i pacchetti in entrata o in uscita da una rete locale. Solitamente le regole si basano sugli indirizzi IP e/o sulle porte di partenza/destinazione dei pacchetti. Quando si usa eMule in una rete locale bisogna impostare le regole di Port Forwarding per evitare di avere ID basso. Solitamente, si fa in modo che tutto il traffico sulle porte di eMule (solitamente 4662 e 4672) che va dalla rete locale ad Internet e viceversa sia indirizzato verso il computer che esegue eMule.

Power Release Questa funzione è stata inventata da Xman per la sua MOD chiamata Xtreme. Lo scopo è di diffondere nuovi file introdotti nella rete, nel minor tempo possibile ed in modo efficiente. Il Power Release è attivabile solo per i file completi. Il Power Release è molto efficiente anche perché modifica la sua priorità a seconda del totale dei dati già inviati per un certo file: all’inizio è davvero molto alta, poi una volta che sono stati inviati 100 MB o 1.5 volte la dimensione del file, la priorità del Power Release diminuisce (pur restando sempre la maggior priorità a disposizione) in quanto ora ci saranno altre fonti in grado di diffondere il file. Inoltre per ottimizzare ulteriormente la diffusione dei singoli chunks di un file, il Power Release utilizza automaticamente la funzione Hide OverShares. All’inizio il HOS ha come valore 1, cioè ogni chunk viene inviato una sola volta e non di più. Poi una volta che sono stati inviati 2/3 chunk (v.) l’ HOS viene aumentato, ovvero ogni singolo chunk da ora può essere inviato più di una volta.

Priorità di upload Sulla schermata dei trasferimenti si può dare una priorità ai vari file che comporterà un aumento o una diminuzione di banda al singolo download in questione. Si può mettere: priorità Bassa, Normale, Alta. Nei file condivisi che vengono messi in upload c’è l’aggiunta della priorità Release (la più alta) per i file più rari che volete entrino in rete e la priorità Molto bassa (per i file ad alta diffusione, per evitare che siano uppati sempre solo questi). La mod MorphXtreme ha anche la Power Release (v.).

Versione e data template DATA Giuseppe Guadalupi PAGINA 106 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Provider ISP Gestore telefonico che offre servizi di accesso a Internet. Tra i più famosi: Alice, Fastweb, Libero, Tiskcali e Tele2.

Ratio Rapporto fra quantità di dati inviati e quantità di dati scaricati in una sessione. Un uso costante di eMule porta ad una ratio media di 1:1.

Release In eMule, il release è la modalità che permette di assegnare ad un file condiviso la massima priorità di upload, dandogli la precedenza su tutti gli altri. Funzione nata per facilitare l’upload dei file messi in condivisione dai releaser, si rivela particolarmente utile anche quando un non releaser ha intenzione di diffondere un file molto raro (1–5 fonti complete). Per modificare la priorità di un file condiviso in priorità release, basterà selezionare il file dalla schermata "File Condivisi" >> Tasto destro sul file >> Priorità >> Release. In linguaggio informatico, con "release" si intende anche il rilascio di una nuova versione di un determinato programma.

Rete e2DK Questa è la rete su cui si appoggiano eMule e altri client come aMule, Sharaeza e lphant. Dopo aver superato nel 2004 la Fast Track, adesso è la rete P2P con il numero di utenti più elevata (3 milioni).

Router Componente hardware o software che gestisce i pacchetti scambiati tra due reti (ad esempio due reti locali oppure una rete locale ed Internet). In sostanza si occupa di monitorare la rete e smistare il traffico nel giusto modo: una sorta di vigile urbano di rete. Praticamente tutti i router casalinghi integrano un modem ADSL e uno switch per collegare una rete locale ad Internet. L’uso di eMule in reti che usano un router può causare problemi (tipicamente ID basso). Consultare le voci NAT e Port Forwarding per maggiori informazioni.

Server Spia Un server spia è un server che monitorizza lo scambio di file o che cerca di impedirlo. Presumibilmente sono sfruttati ed eventualmente finanziati da enti che mal sopportano gli scambi P2P, come ad esempio case discografiche, cinematografiche, eccetera. Un caso famoso di server spia sono i Donkey Server doppi, di cui è stato però trovato il punto debole: l’indirizzo IP dei server fasulli inizia per 72, mentre l’indirizzo dei Donkey Server legittimi comincia per 62.

Shell Extension La Shell Extension, presente dalla 0.47b, è un’estensione di Explorer che permette di ricavare autore, titolo, durata e tipo dei file in scaricamento con eMule. Per consultare tali informazioni basta aprire Risorse del Computer ed entrare nella cartella dei file temporanei di eMule.

Versione e data template DATA Giuseppe Guadalupi PAGINA 107 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Skin Sta ad indicare la veste grafica di un programma. Esistono siti internet e programmi che consentono di scaricare e creare skin personalizzate per emule. Una buona risorsa per scaricare skin di eMule è eMule Kademlia Toolber Skins

Slot In eMule lo Slot è ciascuna delle unità in cui viene divisa la banda di upload fra i vari utenti ai quali stiamo inviando dati. In molte MOD, è possibile regolare il numero di slot oppure la quantità di banda da destinare ad ogni singolo slot.

Slot amico È un mezzo che consente di assegnare ad un utente la precedenza per scaricare un file quasi immediatamente e salando la coda.

Slot Focus (ZZupload) Lo Slot–Focus è una feature presente ormai in quasi tutte le MOD, ideata da ZZ nella omonima mod, per questo lo slot focus spesso si chiama anche ZZ upload. Questa funzione applica un sistema differente di upload rispetto a quello standard dalla versione ufficiale: concentra più banda possibile ad un solo utente in upload invece di distribuire la banda equamente a tutti gli slot aperti, con lo scopo di distribuire i chunk interi il più in fretta possibile.

SUQWT Save Upload Queue Wait Time ovvero Salva Tempo di Attesa in Coda . Questa feature è stata creata dal gruppo italiano degli EnkeyDEV per migliorare la gestione delle code. Usando SUQWT, eMule associa l’hash di ogni utente in coda con il suo tempo di attesa. In questo modo, se l’utente in coda dovesse disconnettersi, nel momento in cui si riconnette alla fonte chiedendole lo stesso file, il suo punteggio sarà calcolato tenendo conto del tempo di attesa memorizzato, permettendogli quindi di ricominciare dalla stessa posizione in cui era prima della disconnessione. Purtroppo la versione ufficiale non supporta ancora questa funzione.

UserHash Lo userhash è un valore univoco che viene calcolato da eMule la primissima volta che viene eseguito. Ogni client sulla rete eD2k ha un userhash differente, quindi questo viene usato per distinguere i vari client e gestire i crediti.

USS (Upload Speed Sense , Upload dinamico) La feature USS (Upload Speed Sense) è stata ideata da ZZ ed è tradotta in italiano col nome Upload Dinamico. Tale funzione affida ad eMule il compito di sfruttare il più possibile la banda in upload, diminuendola automaticamente quando serve per altri scopi (ad esempio la normale navigazione) ed aumentandola quando invece si libera. Da eMule 0.45x l’USS si attiva automaticamente impostando il limite uplaod a zero.

Versione e data template DATA Giuseppe Guadalupi PAGINA 108 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Versione e data template DATA Giuseppe Guadalupi PAGINA 109 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

7. Ringraziamenti

...Al centro Elis, che nel corso di questi due anni non si è solo prodigato per la mia formazione professionale, ma anche umana, insegnandomi i veri valori della vita.

...Ai tutor e i docenti...che nonostante il lavoro e i tempi stretti, mi hanno ascoltato, compreso, supportato e motivato raccontandomi esperienze di vita vissuta utili per vincere determinate situazioni.

...Ai TM7... con cui ho condiviso due bellissimi anni della mia vita

E per finire...A Telecom Italia, che mi ha accolto nella realtà lavorativa dandomi l’opportunità di mettermi in gioco e di accettare le sfide di ogni giorno.

...Per questo e molto altro ancora...... GRAZIE!!!

Versione e data template DATA Giuseppe Guadalupi PAGINA 110 /93 v. 5.1 - 15/06/2007 29/06/2007

Telecommunication Manager 2005-2007 Information Technology Security Solution

Versione e data template DATA Giuseppe Guadalupi PAGINA 111 /93 v. 5.1 - 15/06/2007 29/06/2007