Uno degli strumenti chiave per proteggere i nostri sistemi informatici dai pericoli online è il proxy.
In questo articolo, esploreremo cos’è un proxy, come funziona e in che modo può aiutarci a difenderci dai malware.
Indice degli argomenti
Cos’è un proxy?
Un proxy è un server che agisce come intermediario tra il dispositivo dell’utente e Internet. Quando si naviga sul web, le richieste inviate dal dispositivo passano attraverso il proxy prima di raggiungere il loro destinatario.
Questo permette al proxy di monitorare, filtrare e gestire il traffico Internet in entrata e in uscita.
Il funzionamento di un proxy
Nell’immagine sottostante vediamo nella pratica il funzionamento di un server proxy, in questo caso un proxy HTTP/HTTPS per la protezione della navigazione web, che gestisce la richiesta dell’utente di visitare il sito www.agendadigitale.eu:
- Richiesta dell’utente: il dispositivo dell’utente invia la richiesta al proxy anziché contattare direttamente www.agendadigitale.eu.
- Ricezione della richiesta: il proxy riceve la richiesta e la esamina.
- Inoltro della richiesta: se la richiesta è valida, il proxy la invia al sito web desiderato.
- Risposta dal sito web: il sito web risponde al proxy con i dati richiesti.
- Inoltro della risposta: il proxy riceve la risposta, la controlla e, se sicura, la inoltra al dispositivo dell’utente.
I tipi di proxy e le loro caratteristiche specifiche
Esistono diversi tipi di proxy, ognuno con caratteristiche specifiche:
- Proxy HTTP: gestisce il traffico web (HTTP/HTTPS).
- Proxy SOCKS: può gestire qualsiasi tipo di traffico internet.
- Proxy trasparenti: non richiedono configurazioni specifiche sul dispositivo dell’utente.
Le differenze tra queste diverse tipologie sono molto importanti nella fase di progettazione della sicurezza di una rete in quanto la presenza di uno o più proxy “specialistici” va a modificare completamente la topologia di rete e il funzionamento della stessa.
Nell’immagine abbiamo indicato il proxy come sistema indipendente, mentre al giorno d’oggi li troviamo spesso integrati nei cosiddetti “Next Generation Firewall” e quindi integrati sui sistemi di protezione perimetrale.
Tale tecnica, a mio avviso, è valida per reti piccole e non molto frammentate in quanto le analisi effettuate dai proxy in tempo reale utilizzano in modo massiccio le risorse della macchina, andando ad inficiare così le performance dell’intera rete.
Per reti strutturate consiglio sempre l’adozione di proxy server dedicati, così da ottimizzare le performance del sistema.
Andiamo ora ad analizzare nel dettaglio le diverse tipologie di proxy server.
Proxy HTTP
Il proxy HTTP è progettato unicamente per gestire il traffico web, analizzando specificatamente i protocolli HTTP e HTTPS. Un HTTP proxy può eseguire svariate azioni sul traffico che lo attraversa, tra cui la scansione antivirus dei contenuti delle pagine o il blocco di determinate pagine web.
Quest’ultima azione viene definita “Content Filtering” e l’approfondiremo in seguito nel presente articolo. Un’altra attività generalmente effettuata dai proxy è il caching, ovvero la memorizzazione temporanea dei contenuti delle pagine web visitate per migliorare l’esperienza utente (maggiore velocità di visualizzazione delle pagine già visitate in passato) e ridurre la banda richiesta per la navigazione.
Questa tipologia di proxy viene spesso utilizzata in ambienti aziendali per monitorare e controllare l’accesso a internet dalla rete interna.
Proxy SOCKS
Il proxy SOCKS (Socket Secure) è più versatile rispetto al proxy HTTP.
È indipendente dal protocollo usato e può quindi gestire qualsiasi tipo di traffico di rete, non solo quello basato sui protocolli HTTP/HTTPS. Un uso comune di questa tipologia di proxy è l’analisi dei protocolli mail (SMTP principalmente ma anche IMAP e POP), FTP e DNS ma può essere utilizzato anche per il filtraggio di molti sistemi di messaggistica istantanea.
Essendo indipendente dal protocollo in genere non effettua attività di Content Filtering ed è dotato di minori sistemi di filtraggio, fatta eccezione per motori creati per protocolli specifici.
Un utilizzo molto diffuso di questo tipo di proxy consiste nel gestire e controllare le connessioni non web a cui è permesso di superare i firewall e le protezioni perimetrali.
Proxy trasparenti
Questa non è in realtà una tipologia di proxy, bensì una configurazione specifica attuabile su tutti i proxy sopra descritti.
I proxy trasparenti, infatti, non richiedono configurazioni particolari sui dispositivi degli utenti che potrebbero non essere nemmeno consapevoli dell’esistenza del sistema stesso, in quanto tutto il traffico viene forzato attraverso il proxy dalla struttura della rete.
Questo lo rende ideale per monitorare e controllare l’uso di Internet senza modifiche sui client o all’insaputa degli utenti. Vengono spesso utilizzati dagli ISP (Internet Service Provider) e nelle reti geografiche per monitorare l’accesso alle dorsali internazionali.
La scelta del tipo di proxy da utilizzare
La scelta del tipo di proxy da utilizzare dipende, quindi, dalle specifiche esigenze di sicurezza e dalla natura del traffico internet che si desidera gestire.
I proxy HTTP sono ideali per il controllo e il filtraggio del traffico web, i proxy SOCKS offrono maggiore versatilità per vari tipi di traffico e i proxy trasparenti facilitano la gestione della rete senza configurazioni sui client.
Comprendere queste differenze è essenziale per implementare la soluzione di proxy più adatta alle proprie necessità. Andiamo ora ad analizzare come i proxy possono aiutarci nella difesa dai malware.
Protezione dai malware
Abbiamo stabilito che un proxy offre vari livelli di protezione, nel caso dell’utilizzo di questa tipologia di sistemi per la protezione da malware potremmo riassumerli così:
- Filtraggio dei Contenuti: un proxy può bloccare l’accesso a siti web noti per essere pericolosi o contenere malware, agendo come un guardiano che impedisce l’ingresso di contenuti dannosi.
- Controllo degli Allegati: i proxy possono esaminare allegati di email e file scaricati, verificando la presenza di malware prima che raggiungano il dispositivo dell’utente.
- Crittografia del Traffico: alcuni proxy cifrano il traffico tra il dispositivo e il proxy stesso, proteggendo i dati da intercettazioni.
- Analisi del Traffico: i proxy monitorano e analizzano il traffico di rete in tempo reale per identificare e bloccare attività sospette o dannose.
Andiamo ad analizzarli più nel dettaglio.
Filtraggio dei contenuti
Il filtraggio dei contenuti permette al proxy di analizzare e bloccare l’accesso a siti web noti per essere pericolosi o contenere malware come, ad esempio, la rete TOR e altre DarkNets.
Può, altresì, agire su link specifici come nel caso di alcuni malware che all’esecuzione scaricano da condivisioni di Google Drive, OneDrive o simili il virus vero e proprio. Conoscendo il link lo si può bloccare facilmente tramite il Content Filtering.
I principali meccanismi utilizzati sono:
- Black e white lists: il proxy utilizza elenchi di URL noti (Blacklist) per bloccare l’accesso a siti pericolosi e Whitelists per permettere l’accesso solo a siti fidati.
- Analisi in tempo reale: alcuni proxy possono analizzare i contenuti dei siti web in tempo reale, identificando script o codice potenzialmente dannoso integrandosi con, ad esempio, motori antivirus o sistemi di Threat Detection.
Il principale vantaggio nella lotta contro i malware è dovuto alla proattività della prevenzione in questione: il proxy blocca l’accesso al codice malevolo prima che questo venga scaricato sulla macchina per essere poi eseguito.
Dall’altra parte questo genere di controllo necessita di aggiornamento continuo delle liste e delle regole di filtraggio, per riuscire a far fronte anche alle nuove minacce.
Questa operazione di aggiornamento continuo, anche se correttamente automatizzata, richiede comunque un costante monitoraggio e una costante verifica che tutto stia funzionando per il verso giusto, rendendo quindi tale meccanismo abbastanza oneroso per gli staff IT.
Controllo degli allegati
Come detto in precedenza i proxy possono esaminare gli allegati dei messaggi di posta elettronica e i file scaricati per verificare la presenza di malware prima che raggiungano il dispositivo dell’utente. Anche in questo caso i meccanismi utilizzati sono riassumibili come di seguito:
- Scansione antivirus: utilizzano motori antivirus integrati per scansionare gli allegati alla ricerca di firme di malware.
- Sandboxing: eseguono i file in un ambiente isolato (sandbox) per osservare comportamenti sospetti senza rischiare di infettare il sistema.
I principali vantaggi dei meccanismi indicati si possono riassumere nell’identificazione di malware conosciuti (e loro varianti) tramite la scansione antivirus basata su pattern, mentre i meccanismi di sandboxing sono in grado di effettuare quella che viene definita Behavioural Analysis (analisi comportamentale) individuando così eventuali malware sconosciuti.
Quest’ultima avviene generalmente integrando il proxy con degli IPS (Intrusion Prevention System) adeguatamente configurati per una Threat Detection evoluta.
Crittografia del traffico
Cifrare il traffico tra il dispositivo dell’utente e il proxy stesso permette di proteggere i dati da intercettazioni o attacchi di tipo Man In The Middle, comunemente chiamati anche On Path, in cui un attaccante si posiziona tra la vittima e il sistema remoto intercettando la comunicazione tra i due e arrivando, a volte, persino a modificarla in tempo reale.
Per evitare questo genere di attacchi vengono generalmente utilizzati i seguenti meccanismi:
- Protocollo HTTPS: utilizzano HTTPS per cifrare la comunicazione tra l’utente e il proxy.
- VPN: alcuni proxy offrono funzionalità VPN per una crittografia end-to-end del traffico internet.
I principali vantaggi sono chiaramente la sicurezza della comunicazione e la protezione dei dati in transito, cioè da quando escono dal sistema di partenza e prima che arrivino al sistema di destinazione.
Analisi del traffico
Integrandosi con NIDS (Network Intrusion Detection System) possono monitorare e analizzare il traffico di rete in tempo reale per identificare e bloccare attività sospette o dannose. I principali meccanismi sono:
- Rilevamento di anomalie: utilizzano algoritmi di rilevamento delle anomalie per identificare comportamenti inconsueti nel traffico di rete.
- Regole di intrusion detection: applicano regole di rilevamento delle intrusioni (IDS) per identificare tentativi di attacco conosciuti.
I principali vantaggi sono la risposta quasi in tempo reale a potenziali attacchi e minacce grazie anche ai meccanismi di automatizzazione propri degli IDS e la protezione continua e costante dovuta appunto ai motori di analisi automatici.
Conclusioni
Un proxy è uno strumento potente e versatile che può migliorare significativamente la sicurezza dei nostri sistemi informatici.
Agendo come intermediario e guardiano, un proxy ci protegge dai pericoli della rete come i malware.
L’implementazione di un proxy ben configurato è un passo fondamentale per qualsiasi strategia di sicurezza informatica, offrendo una barriera efficace contro le minacce online.
La varietà di meccanismi disponibili, dal filtraggio dei contenuti e il controllo degli allegati, fino alla crittografia del traffico e l’analisi del traffico stesso, ci fornisce una difesa multilivello contro le minacce online.
Implementare un proxy ben configurato è un passo essenziale per qualsiasi strategia di sicurezza informatica, offrendo una barriera efficace e proattiva contro i malware e altre minacce cyber.
In un mondo sempre più connesso, la sicurezza informatica non è mai stata così cruciale.
Utilizzare un proxy è una delle migliori difese che possiamo adottare per proteggere i nostri dati e mantenere i nostri sistemi sicuri.