logo proxyscrape scuro

Che cos'è un proxy trasparente?

Proxy, 04.07.20215 minuti di lettura

We can define a transparent proxy as a server that acts as an intermediary system intercepting the connection between an end-user and a content provider. Other names for transparent proxy are inline proxy or forced proxy. We use the word ‘transparent’ with the proxy because it intercepts requests by intercepting packets directed to the destination

Possiamo definire un proxy trasparente come un server che agisce come sistema intermedio intercettando la connessione tra un utente finale e un fornitore di contenuti. Altri nomi per il proxy trasparente sono inline proxy o forced proxy. Utilizziamo il termine "trasparente" con il proxy perché intercetta le richieste intercettando i pacchetti diretti alla destinazione, facendo credere che sia la destinazione stessa a gestire la richiesta. I proxy trasparenti sono impostati dal sito web o dall'operatore di rete e non dall'utente finale.

A volte si usa anche il termine "proxy forzato" per indicare un proxy trasparente. Questo perché può essere applicato alla connessione di un utente senza modificare le impostazioni proxy del suo computer. Di conseguenza, i proxy trasparenti possono essere imposti agli utenti senza il loro consenso, ma in molti casi ne conoscono la presenza. 

Esempi di deleghe trasparenti

Un firewall è un esempio di proxy trasparente che consente il passaggio del traffico tra una rete interna e Internet, ma blocca il traffico se viola la tabella delle regole del firewall.

Altri esempi di proxy trasparenti sono le reti di distribuzione dei contenuti (CDN). Esse forniscono ridondanza, caching e migliorano la velocità senza modificare o esporre il sistema di origine. L'utente pensa di essere collegato direttamente al fornitore del servizio, ma in realtà è la CDN a gestire tutte le sue richieste. È così che aziende tecnologiche come Google, Twitter e Facebook gestiscono milioni di richieste con tempi di inattività minimi.

Impostazioni comuni del proxy trasparente

Le seguenti sono le impostazioni standard del proxy trasparente ogni volta che lo impostiamo:

  • Autenticazione: Fornisce al server le stesse credenziali degli utenti dietro il proxy.
  • Intercettazione: Definisce come il proxy trasparente intercetta il traffico a livello di router o di sistema operativo.
  • Caching: specifica se il server proxy debba o meno memorizzare nella cache i contenuti per gli utenti che ritornano.
  • Proxy inverso: Invece di impostare il proxy per intercettare l'accesso remoto, possiamo posizionarlo davanti a un server web per accelerare le prestazioni dell'utente. 
  • Streaming dei dati, filtraggio delle chat: Possiamo configurare il proxy trasparente in modo che agli utenti non sia consentito l'accesso a porte o protocolli specifici.

Usi del proxy trasparente - Lato client

È possibile distribuire un proxy trasparente sul lato client, il che significa che il proxy intercetta tutto il traffico da e verso un endpoint client. Gli usi dei proxy trasparenti sul lato client sono:

Caching trasparente

Quando più persone accedono allo stesso contenuto dalla stessa area o località, ad esempio quando diversi studenti visualizzano lo stesso sito di notizie attraverso la rete universitaria, è più efficiente utilizzare un proxy trasparente per memorizzare inizialmente il contenuto nella cache e servirlo agli utenti successivi.

Autenticazione

Gli operatori di Internet cellulare e i punti wifi pubblici talvolta utilizzano proxy trasparenti per costringere gli utenti ad autenticarsi sulla rete e ad accettare i loro termini di servizio. La navigazione è consentita solo quando l'utente si certifica e accetta i termini e le condizioni. 

La maggior parte degli utenti non sa che l'intera connessione può essere intercettata e monitorata dall'operatore anche dopo la schermata iniziale di autenticazione tramite proxy trasparente.

Monitoraggio del traffico

Quando gestiamo una rete, possiamo impostare un proxy trasparente per monitorare il traffico e il comportamento degli utenti, ma il monitoraggio del traffico ha anche molti usi illegittimi. Ad esempio, un operatore wifi pubblico senza scrupoli e inaffidabile può facilmente monitorare le connessioni degli utenti e rubare credenziali e dati.

Proxy gateway

È possibile utilizzare un proxy gateway per modificare o bloccare il traffico di rete in base alle regole. Un esempio di proxy gateway è il proxy firewall trasparente descritto nell'esempio precedente.

Filtraggio dei contenuti

È inoltre possibile utilizzare un proxy trasparente per filtrare i contenuti non necessari e indesiderati. Ad esempio, il proxy può astenersi dall'inoltrare la richiesta al server Web quando viene richiesto un sito specifico. Al contrario, intercetta la connessione e visualizza un avviso o un messaggio di errore per l'utente.

Usi del proxy trasparente - Lato server

Protezione contro le interruzioni di servizio (Dos)

È possibile proteggere un server da un attacco SYN-flood Denial of Service (DoS) utilizzando un tipo di proxy trasparente, ossia l'intercettazione TCP. Il proxy ha la funzione di intercettare tutto il traffico verso un server Web, accettare le richieste dei client ed eseguire un handshake a tre vie. Inoltre, se l'intercettazione del traffico ha successo, esegue un handshake a tre vie con il server, unendo così le due mezze connessioni tra client e server.

L'intercettazione del Transmission Control Protocol controlla le richieste TCP e in genere attende 30 secondi per stabilire le connessioni. Entra in "modalità aggressiva" quando il numero di connessioni inattive supera una certa soglia. In questa modalità, ogni nuova connessione in arrivo provoca la cancellazione della connessione passiva più vecchia.

Tuttavia, la tecnica sopra descritta non è più efficace contro i moderni attacchi DDoS (Distributed Denial of Service) su larga scala. Questo perché gli aggressori, al giorno d'oggi, controllano milioni di computer zombie e di server ad alta potenza per creare inondazioni di SYN che sopraffanno un controllore di intercettazione TCP.

Per questo motivo, oggi la maggior parte delle organizzazioni utilizza servizi basati sul cloud come DDoS Protection di Imperva. Questi servizi sono in grado di proteggere da attacchi DDoS di grandi dimensioni e possono anche scalare su richiesta, per affrontare e gestire meglio gli attacchi su larga scala. 

Ad esempio, i servizi DDoS possono prevenire gli attacchi di livello applicativo e gli attacchi di protocollo che non avvengono a livello TCP.

CDN per l'ottimizzazione del Front-End

Possiamo definire una Content Delivery Network (CDN) come una rete distribuita a livello globale di server proxy che serve e mette in cache i contenuti per gli utenti vicini alla loro posizione geografica.

Un esempio di CDN è Global Content Delivery Network di Imperva, un proxy trasparente che opera sul lato server. Il suo scopo è quello di eseguire l'ottimizzazione del front-end per migliorare l'esperienza dell'utente finale. Intercetta il traffico verso un server web e offre lo stesso contenuto dalla cache del server, invece di permettere all'utente di accedere direttamente al server. Di conseguenza, le prestazioni dell'utente migliorano e le risorse di sistema richieste dal server si riducono.

Limitazioni del proxy trasparente

Sebbene la delega trasparente presenti un'ampia varietà di vantaggi, può generare alcune frustrazioni in ambienti aziendali complessi.

Mancanza di robustezza: Se viene stabilita una connessione tra un client e una cache e si verifica un cambiamento di routing che fa sì che il client adotti un percorso che non passa più attraverso il dispositivo di rete "deviante", la sessione si interrompe e l'utente deve ricaricare la pagina.

D'altra parte, se i router su Internet sono "flap" (un router pubblicizza alternativamente una rete di destinazione in rapida sequenza), i risultati saranno ancora più imprevedibili.

Dipendenza dal browser: La maggior parte dei proxy trasparenti si basa sul fatto che il browser fornisca il nome host del server di origine nell'intestazione della richiesta HTTP per funzionare correttamente.

È necessario perché queste cache non hanno accesso all'indirizzo IP di destinazione del server di origine dall'indirizzo IP del pacchetto.

Pertanto, quando si verifica una cache miss, non possono identificare l'indirizzo del server di origine a cui inviare la richiesta.

Conclusione

Abbiamo discusso del fatto che il traffico Internet può essere monitorato e filtrato mediante l'uso di un proxy trasparente. Il proxy trasparente è anche in grado di plasmare il modo in cui interagiamo con il web. Che serva i dati più velocemente filtrando i contenuti indesiderati, effettuando il caching o dando alle aziende un maggiore controllo sulle loro reti, il proxy trasparente aggiunge funzionalità a Internet senza aggiungere alcun inconveniente.