I SISTEMI DI WEB CONTENT FILTERING Mario Marcuzzi
I SISTEMI DI WEB CONTENT FILTERING Mario Marcuzzi marcuzzi. m@iresfvg. org 22 marzo 2019
1969: nasce Internet q q q Il 2 settembre 1969, per la prima volta, due computer si scambiano dati in locale (UCLA). Il 29 ottobre 1969 due computer remoti (UCLA e Standford Research Institute) iniziano a scambiarsi dati ma la connessione va in crash dopo le prime due lettere della parola "logon". E' l'inizio di Internet!
1989: nasce il web q q q Il web viene ideato nel 1989 dal fisico inglese Tim Berners-Lee (primo server web, primo browser, HTML). Il primo sito web di sempre (info. cern. ch) viene pubblicato il 6 agosto 1991 dallo stesso Berners. Lee al CERN. Nel 1993 il CERN rende disponibile la tecnologia World Wide Web ("W 3") senza costi aggiuntivi, consentendo lo sviluppo del Web.
Un anno "speciale"… Nel 2016 il numero di siti Web raddoppia, passando da 900 milioni a 1, 7 miliardi.
Il web… dopo 30 anni q q q 1, 94 miliardi di siti web 51, 8% del traffico Internet è generato da bots 90. 000 siti web al giorno hackerati (Fonte: https: //hostingfacts. com/internet-facts-stats/)
La crescita del web Sites = Number of web servers (one host may have multiple sites by using different domains or port numbers)
HTTP Tech Review q q q HTTP è un protocollo a livello di applicazione (7) e si appoggia sul livello di trasporto TCP Il client HTTP (user-agent) inizia una connessione TCP verso un server HTTP (porta 80) Il server HTTP (host) accetta connessioni TCP sulla porta 80 Client e server HTTP si scambiano informazioni (contenuti web e messaggi di controllo) La connessione TCP tra client e server HTTP viene chiusa Riferimenti: RFC 1945 - RFC 2616
HTTP Request/Answer L'utente digita sul suo browser http: //www. google. it Il client interroga il DNS e inizia una connessione TCP verso il server HTTP sulla porta 80 Il client HTTP invia una richiesta HTTP tramite la connessione TCP stabilita. La richiesta indica che il client vuole la pagina index Il server HTTP in esecuzione, in attesa sulla porta 80, accetta la connessione e notifica il client Il server HTTP riceve la richiesta HTTP ed invia un risposta http contenente la pagina
Le criticità q q q Molto è il malware proveniente da siti web compromessi in grado di danneggiare i dati o sistemi informatici Ambienti da proteggere Attività di navigazione inopportune
Scenario 1 Siti web compromessi
Perché sono pericolosi q q Ogni giorno "navigazione sicura" di Google individua migliaia di nuovi siti compromessi. Molti di questi sono siti web legittimi che sono stati compromessi dagli hacker. I siti compromessi minacciano la privacy e la sicurezza degli utenti e si suddividono in due categorie: phishing e malware.
Siti compromessi da malware q Questi siti web contengono codice che installa software dannoso sui computer degli utenti che li visitano, anche quando un utente è convinto di scaricare software lecito oppure addirittura all'insaputa dell'utente.
Esempio: ransomware q Il ransomware è una tipologia di malware che limita l’accesso ai dati del dispositivo infettato, richiedendo un riscatto da pagare per rimuovere la limitazione.
Come si attiva? q q q Non appena il destinatario apre un allegato maligno o fa clic su un link compromesso, il malware viene scaricato nel sistema dell’utente. Il programma si attiva e cifra tutti i documenti presenti sul supporto dell'utente e tutte le cartelle di rete montate. Viene chiesto un riscatto (in bitcoin)
Petya (2016) Crypt. XXX (2016) Popcorn (2016) Criptolocker (2013) CTB-Locker (2014) Ramson 32 (2015) Carber (2016) Tesla. Crypt (2015) Wanna. Cry (2016) Cripto. Wall (2014) Pokemon. Go (2016) Bad Rabbit (2017) Not. Petya (2017) Torrent. Locker (2014) Locky (2016)
Siti compromessi per phishing q Questi siti web si presentano all'apparenza come siti legittimi, in modo da poter ingannare gli utenti e indurli a digitare il proprio nome utente e la password o a condividere altri dati privati.
Scenario 2 Ambienti da proteggere
Una sensibilità da coltivare q q Negli Stati Uniti, per ricevere i fondi federali del programma E-Rate le scuole e le biblioteche sono tenute per legge a installare un sistema di filtraggio dei contenuti conforme ai criteri del Children’s Internet Protection Act (CIPA). In Europa ed in Italia il problema non è stato affrontato in termini analoghi, e la scelta viene demandata alla sensibilità degli Istituti
Scenario 3 Attività di navigazione
dal "Corriere" del 11/03/2019
Cosa può essere necessario? q q q Regolamentare l'accesso ai Social Network o ad altri siti non strategici in orari prestabiliti. Impedire l'accesso a posta elettronica diversa da quella dell'organizzazione Creare pagine di autenticazione e di sottoscrizione delle policy aziendali sull'utilizzo del web
Definizione Le soluzioni hardware/software o i servizi che permettono di controllare (inibire o consentire) l'accesso a risorse web si identificano come “Web Content Filtering”.
Una esigenza, molte implementazioni q q q Platform-based blocking: servizi offerti dale piattaforme a cui ci si collega IP/Protocol-based blocking: firewall URL-based blocking: firewall perimetrali, software anti-malware, software proprietari Deep Packet Inspection-based blocking: firewall perimetrali DNS-based blocking: servizi DNS
Platform-based blocking: Google Impostazioni
Platform-based blocking: You. Tube
Platform-based blocking : Yahoo
URL blocking q q q I sistemi di Web Content Filtering basati su URL blocking si basano su una classificazione dei siti web che li etichetta come appartenenti ad un insieme di categorie. Ad ogni sito web vengono associate una o più categorie. La corrispondenza tra siti web e categorie viene mantenuta a livello di database centralizzato. Quando l'utente richiede una pagina web, avviene un'interrogazione del database conseguente decisione sulla base delle policy definite per il Content Filtering.
Ci sono due tipi di approcci per il filtro delle URL: A livello di device. A livello perimetrale. Filtro Famigli a Azien da
Web Content Filtering a livello di dispositivo (filtro famiglia) Filtro Famigli a
Filtro Famiglia : soluzioni software q q q Prevenzione da accessi a contenuti inopportuni. Prevenzione da malware. Logging e Reporting. Parental Control. Soluzioni gratuite/a pagamento. Soluzioni con management locale o in cloud.
Come funziona un Filtro Famiglia? 3 – La richiesta di Luca viene rielaborata dal Server del "Filtro Famiglia" che "decide" se Luca ha Richiesto un sito legittimo! 1 – Sul PC di Luca è stato installato un software "Filtro Famiglia" 2 - Luca cerca di collegarsi, ad esempio, a http: //www. facebook. com 4. 1 – Se il sito è stato impostato come "Legittimo", Luca si collega 4. 2 – Sito bloccato
Famiglia di account q q q Windows 10 ha re-ingegnerizzato la tecnologia "Family Safety" presente nelle precedenti versioni di Windows. È un servizio che consente alle famiglie di rimanere connesse e di tutelare la sicurezza dei bambini sui dispositivi Windows 10 e Xbox One, così come sui dispositivi Android in cui è in esecuzione Microsoft Launcher. E’ necessario disporre di account Microsoft.
Account Microsoft
Famiglia di account q Dall’account Microsoft del genitore è possibile aggiungere gli account dei figli, che possono quindi essere monitorati e limitati da quest’ultimo.
Il sistema di Parental Control
Altre soluzioni software Filtro Famiglia/Parental Control
Filtro Famiglia: Qustodio q q www. qustodio. com La sua qualità maggiore è la disponibilità gratuita su tutti i sistemi operativi, anche mobili (Windows, i. OS, Kindle, Mac OS X, Android). E' gratuito per le funzioni fondamentali. Management in cloud.
Qustodio: cosa fa?
Panoramica attività
Navigazione
Impostazioni – Regole Web
Impostazioni – SMS
Web Content Filtering a livello di rete locale (scenario aziendale) Azien da
Vantaggi del Web Content Filtering in azienda q q q Un consolidamento delle strategie di sicurezza informatica (contro malware che sfrutta la porta 80). 40 K nuove minacce/giorno. Esempi: Conficker e Cryptolocker. Disciplina di utilizzo della “risorsa Internet” (come accade per altri asset). Monitoraggio dell'utilizzo di Internet all'interno della struttura. Prevenzione da accessi a contenuti inopportuni per l'utente Esempio: laboratorio didattico/aula informatica.
Le criticità Il web si modifica continuamente: allo stato dell'arte non è immaginabile un web content filtering efficace al 100%. Alcune soluzioni garantiscono una buona affidabilità, ma sono costose (subscription fee). Possibilità di falsi positivi.
L'approccio basato sulla gestione del DNS q q DNS = Domain Name System È l'elenco telefonico di Internet Gli utenti utilizzano nomi. La rete comprende indirizzi. I DNS "traducono" i nomi in indirizzi.
Come funziona un DNS?
DNS setup
Utilizzare DNS diversi da quelli assegnati… q DNS di Google: q DNS di Open. DNS Family Shield: q 8. 8. 4. 4 208. 67. 222. 123 208. 67. 220. 123 DNS di Open. DNS Home: 208. 67. 222 208. 67. 220
Un caso reale q q q Nel 2012 la Turchia ha bloccato una serie di queries DNS Gli utenti hanno modificato i propri indirizzi DNS, spostandoli su Google Le autorità hanno risposto con l'hijacking dei DNS di Google
Open. DNS q q 14 datacenter nel mondo Mezzo milione di query al secondo!
Perché Open. DNS? q q q Rendere la connessione più veloce ed affidabile. Realizzare un sistema di Web Content Filtering. Proteggere gli utenti da siti web contraffatti. Proteggere qualsiasi dispositivo (basta modificare i DNS). www. opendns. com
Open. DNS: le soluzioni
Open. DNS Family Shield
Open. DNS Family Shield
Open. DNS Family Shield
Open. DNS Family Shield: blocco domini
Open. DNS Family Shield: blocco malware
Open. DNS Home q q I DNS da utilizzare sono diversi da quelli della versione Family Shield! Rispetto alla versione Family Shield viene richiesta una registrazione on-line. Una volta registrati, è possibile personalizzare le impostazioni di Web Content Filtering (vedi slide seguenti). Inoltre è possibile ottenere reportistica di utilizzo (vedi slide seguenti).
Open. DNS Home
Content Filter integrati in Firewall perimetrali
Strategie q q q IP blocking Packet Inspection URL blocking
Firewall perimetrali q q q Diverse soluzioni presenti sul mercato. La soluzione si compone di una parte hardware (firewall appliance) e di un servizio soggetto ad un costo annuale. Le richieste web vengono esaminate dal firewall – che si interfaccia ad un database mantenuto dal fornitore o da terze parti – ed accolte o rifiutate. Le politiche sono configurate a livello di firewall. E' da valutare: i costi, l'affidabilità e la granularità di configurazione.
Web Content Filtering basato su URL blocking
Pagina web di configurazione (1)
Pagina web di configurazione (2)
Politiche configurabili
Per intervalli di giornata
Utenti che bypassano il filtro
Web Content Filtering Soluzioni Open Source
Il caso di Squid e squid. Guard
Squid Proxy Server open source (GPLv 2) Access control Authorization Logging
squid. Guard Plugin per Squid che permette di attivare un servizio di Web Content Filtering URL redirector Licenza GPLv 2 Flessibile ed efficiente Semplice da installare Versione attuale: 1. 4 (beta 1. 5)
Squid 1 Richiesta pagina 4 5 6 2 Verifica pagina 3 Pagina ammessa squid. Gua rd 1 Richiesta pagina Squid 5 2 Verifica pagina 3 Pagina non ammessa squid. Gua rd
Installare squid. Guard # # tar zxvf squid. Guard-1. 4. tar. gz. /configure make sudo make install
Configurare Squid per squid. Guard ## vi squid. conf. . . redirect_program /usr/local/bin/squid. Guard -c /usr/local/squid. Guard. conf. . . # squid -k reconfigure
# cd /var/squid. Guard/test # vi domains facebook. com twitter. com youtube. com # vi urls www. facebook. com www. twitter. com www. youtube. com
# vi /etc/squid. Guard. conf dbhome /var/squid. Guard/db logdir /var/log/squid. Guard dest deny { domainlist test/domains urllist test/urls } acl { default { pass !deny all redirect https: //google. com } }
Configurare squid. Guard Squid. Guard. conf # # CONFIG FILE FOR SQUIDGUARD # dbhome /usr/local/squid. Guard/db logdir /usr/local/squid. Guard/logs dest adv { domainlist urllist } dest porn { domainlist urllist } dest warez { domainlist urllist } adv/domains adv/urls porn/domains porn/urls warez/domains warez/urls acl { default { pass !adv !porn !warez all redirect http: //localhost/block. html } }
Blacklist per squid. Guard Le blacklist sono il cuore di ogni sistema di Web Content Filtering! E' possibile scegliere tra diverse distribuzioni di blacklist, commerciali e non, o utilizzare le proprie (oppure una combinazione delle due). squid. Guard viene fornito con una modesta blacklist, utilizzabile come test.
Blacklist per squid. Guard Shalla's Blacklists: gratuite per utilizzo non commerciale. Oltre 1, 5 milioni di record; aggiornate regolarmente. http: //www. shallalist. de/ Blacklist Université Toulouse (UT 1) Diverse categorie mantenute da Fabrice Prigent. Aggiornate con regolarità. Licenza CC. http: //dsi. ut-capitole. fr/blacklists/index_en. php
Esempio di script che aggiorna le blacklist #!/bin/sh blacklisturl=ftp: //ftp. univ-tlse 1. fr/pub/reseau/cache/ squidguard_contrib/blacklists. tar. gz blacklistfile=blacklists. tar. gz blacklistdir=/var/db echo "Download from $blacklisturl" fetch -q -o /tmp/$blacklistfile $blacklisturl if [ -r $gzdir/$rules ]; then echo "Update the database" cd $blacklistdir tar zxvf /tmp/$blacklistfile 2>&1 > /dev/null chown -R www: www blacklists cd echo "Restart Squid" squid -k reconfigure echo "Done. . . " exit fi
Ed i report? SARG – Squid Analysis Report Generator (GPLv 2)
Se tutto questo è troppo “macchinoso”. . .
IPCop è una distribuzione Linux completa il cui obiettivo è di proteggere le reti in cui è installato. E' – prima di tutto – un firewall. Fork di Smooth. Wall. Comprende Squid + squid. Guard. Blacklist selezionabili. Licenza GNU GPL.
Installazione
Gestione di IPCop Configurazione del network (LAN, WAN, eventuali DMZ). Una volta installato, si gestisce via Web. Avvio dei servizi. . .
Avvio della connessione
Avvio del servizio Proxy
Avvio del Web Content Filtering
Scelta delle liste
Per concludere Il Web Content Filtering non è un “costo”, ma un “presidio”. Non è uno strumento per “impedire”, ma prima di tutto uno strumento per incrementare la sicurezza dell'infrastruttura e per verificare l'utilizzo della porta 80. Diverse soluzioni Open Source disponibili.
Sitografia http: //squid-cache. org http: //squidguard. org Http: //dansguardian. org http: //www. opendns. org http: //dsi. ut-capitole. fr/blacklists/ http: //www. shallist. de http: //squidguard. masd. k 12. or. us http: //www. ipcop. org http: //www. ipfire. org
Sitografia http: //www. ilfiltro. it http: //www. sonicwall. com http: //www. bluecoat. com
- Slides: 105