Torna al blog

Che cos’è un web proxy? Come riconoscere i proxy del browser nei log

proxysicurezza weblogip intelligenceforensics di rete

Un approfondimento tecnico per engineering team sui web proxy, con focus sulle implementazioni basate su browser e sui segnali che lasciano nei log di sistema.

I web proxy basati su browser restano un problema concreto per chi si occupa di sicurezza di rete. Anche se spesso si tende ad associare i proxy a infrastrutture dedicate e su larga scala, una quota significativa del traffico passa in realtà da estensioni del browser, servizi web rivolti agli utenti o configurazioni locali. Capire come questi strumenti compaiono nei log è essenziale per chi lavora su fraud detection, prevenzione degli abusi o threat intelligence.

Questo articolo si concentra sugli aspetti pratici dell’identificazione dei proxy basati su browser a partire dai log, mettendo in evidenza sia i segnali utili sia i loro limiti.

What is a Web Proxy?

In sostanza, un web proxy funziona da intermediario tra un client e i server da cui il client vuole ottenere una risorsa. Invece di collegarsi direttamente a un sito, il client invia la richiesta al proxy server, che la inoltra al sito per suo conto. La risposta del sito torna poi al client passando di nuovo attraverso il proxy.

Questo meccanismo può servire a diversi scopi:

  • Anonimato/Privacy: Nascondere l’indirizzo IP originale del client.
  • Controllo degli accessi: Aggirare restrizioni geografiche o firewall aziendali.
  • Caching: Migliorare le prestazioni servendo contenuti già memorizzati.
  • Logging/Monitoraggio: Intercettare e registrare il traffico per analisi successive.
  • Sicurezza: Filtrare contenuti malevoli o applicare policy.

Browser-Based vs. Dedicated Proxies

La funzione di base è la stessa, ma i proxy basati su browser sono diversi dalle infrastrutture proxy dedicate per modalità di distribuzione e impronta operativa. I proxy dedicati usano spesso software specifico in esecuzione su server determinati, gestiti da una persona o da un’organizzazione per uno scopo stabile: per esempio un proxy aziendale in uscita o un servizio VPN. Tendono a usare protocolli noti come SOCKS o HTTP/HTTPS e possono provenire da grandi provider di hosting.

I proxy basati su browser, invece, sono in genere:

  • Estensioni/Add-on: Piccoli componenti installati direttamente nel browser, come Chrome, Firefox o Edge. Modificano le richieste di rete lato client per instradarle verso un proxy server gestito dal provider dell’estensione.
  • Servizi web: Siti che offrono funzionalità proxy direttamente dal browser, per esempio inserendo un URL in una pagina per navigare in modo anonimo. In questo caso il proxy server coincide con il server web che ospita il servizio.
  • Software proxy locale: Applicazioni in esecuzione sulla macchina dell’utente che reindirizzano il traffico del browser verso un proxy locale e poi verso un proxy upstream. È un modello che si ritrova in alcuni ad blocker, strumenti per la privacy o tool specializzati per il testing.

Dal punto di vista della detection, la differenza importante è che i proxy basati su browser spesso sfruttano infrastrutture molto varie, talvolta temporanee, e presentano pattern d’uso meno regolari rispetto ai servizi dedicati.

Surfacing Browser Proxies in Logs

Individuare l’uso di proxy basati su browser significa analizzare diversi campi nei log di web server, CDN e applicazioni. Nessun campo, da solo, dà una risposta definitiva: nella pratica si lavora correlando più segnali deboli, fino a costruire un’indicazione credibile di attività proxy.

1. IP Address Anomalies

Il segnale più immediato è l’indirizzo IP che stabilisce la connessione. Se una richiesta arriva da un IP noto per essere associato a servizi proxy, siamo davanti a un indicatore forte. Nel caso dei proxy basati su browser, questo spesso significa:

  • IP di hosting provider/datacenter: Molti servizi proxy gratuiti o a basso costo operano da provider di hosting commodity. Un IP appartenente a un grande cloud provider, come AWS, GCP, Azure, DigitalOcean, OVH e simili, o a un datacenter meno noto, diventa sospetto se non è coerente con i pattern attesi del traffico utente. Per esempio, un IP in un range di hosting che accede al tuo sito retail da un’area geografica in cui non hai presenza commerciale è un campanello d’allarme.
  • TOR Exit Node: L’indirizzo IP risulta presente negli elenchi dei nodi di uscita TOR. Molti strumenti basati su browser possono instradare il traffico attraverso TOR con facilità.
  • IP VPN: Anche se spesso viene trattata come categoria separata, molte estensioni browser offrono funzionalità simili a una VPN, instradando il traffico attraverso provider VPN commerciali.
  • Blacklist di proxy: L’IP compare in blacklist commerciali o open source dedicate ai proxy.

Limiti: Un utente legittimo può usare una VPN per ragioni di privacy, oppure il suo ISP può instradare il traffico attraverso infrastrutture che assomigliano a datacenter. Il contesto resta decisivo.

2. HTTP Headers

Gli header HTTP sono una fonte ricca di informazioni. Alcuni possono essere manipolati, ma altri vengono spesso lasciati invariati o finiscono per rivelare la presenza di un proxy.

  • `X-Forwarded-For` / `X-Real-IP`: Questi header vengono normalmente aggiunti dai proxy per conservare l’indirizzo IP originale del client. Se la tua applicazione si aspetta di vedere l’IP diretto del client, ma trova un IP proxy in REMOTE_ADDR e un IP completamente diverso, magari residenziale, in X-Forwarded-For, è molto probabile che sia in uso un proxy. Attenzione però: un attaccante esperto può falsificare questi header.

Esempio:* REMOTE_ADDR = 192.0.2.1 (IP del proxy), X-Forwarded-For = 203.0.113.10 (possibile IP originale del client).

  • Header `Via`: Alcuni proxy, soprattutto quelli più datati o trasparenti, aggiungono un header Via che indica il protocollo e l’hostname/IP dei proxy attraversati. È meno comune nei proxy moderni basati su browser, ma può ancora comparire.

Esempio:* Via: 1.1 proxy.example.com

  • `Proxy-Connection` / `Proxy-Authorization`: La presenza di questi header indica che il client ha configurato esplicitamente il browser per usare un proxy. Proxy-Authorization, in particolare, suggerisce un proxy autenticato: è frequente in ambienti aziendali, ma anche nei servizi proxy a pagamento.
  • Incoerenze nella stringa User-Agent: Alcune estensioni possono modificare leggermente lo User-Agent, oppure la stringa può non essere coerente con altri segnali osservati. Un esempio tipico è uno User-Agent mobile proveniente da un IP di datacenter, abbinato però a risoluzioni schermo tipiche di un desktop.

Limiti: Gli header possono essere modificati o rimossi. X-Forwarded-For può contenere più IP oppure essere interamente inventato.

3. Connection Characteristics

Oltre a IP e header, anche il modo in cui la connessione viene stabilita e si comporta può offrire indizi utili.

  • TLS/SSL Fingerprinting (JA3/JA4): L’handshake TLS contiene pattern specifici legati al browser, al sistema operativo e allo stack di rete del client. Un browser che si collega tramite proxy può mostrare un fingerprint TLS diverso da quello di una connessione diretta, per esempio più simile a un componente server-side o a una libreria generica.
  • Supporto HTTP/2 o HTTP/3: Un proxy può effettuare downgrade o upgrade della versione HTTP, creando discrepanze tra le capacità dichiarate dal client e la versione del protocollo effettivamente usata nella connessione.
  • Round Trip Time (RTT) / Latenza: Non è un indicatore definitivo, ma una latenza insolitamente alta o irregolare per una certa area geografica può suggerire una catena proxy multi-hop.

Limiti: Il TLS fingerprinting è una tecnica avanzata e può essere aggirata. L’RTT varia molto in base alle condizioni della rete.

Leveraging IP Intelligence

Correlare manualmente questi segnali su milioni di righe di log non è sostenibile. È qui che le API specializzate di IP intelligence diventano fondamentali. Servizi come guarda.net automatizzano l’analisi di questi e molti altri segnali, restituendo una valutazione del rischio più compatta e utilizzabile.

Un servizio di IP intelligence in genere fornisce:

  • Rilevamento Proxy/VPN/TOR: Classificazione diretta di un IP come proxy noto, VPN o nodo di uscita TOR, basata su monitoraggio continuo e liste dedicate.
  • Dati ASN/Organizzazione: Identificazione dell’Autonomous System Number e dell’organizzazione proprietaria. Gli IP appartenenti a provider di hosting, per esempio con nomi ASN che contengono «HOSTING», «CLOUD» o «DATACENTER», sono spesso considerati sospetti quando vengono usati da utenti finali.
  • Hostname rDNS: I record DNS inversi possono talvolta esporre infrastrutture proxy, per esempio proxy.someprovider.net. Anche se sono facilmente manipolabili, restano un ulteriore punto dati.
  • Risk Score: Un punteggio numerico aggregato che rappresenta la probabilità che un IP sia malevolo o associato ad abusi. Il punteggio può includere fattori come pattern di attacco osservati, presenza in blacklist e tipo di infrastruttura.

Integrando un’API di questo tipo, puoi arricchire i log con intelligence in tempo reale. Se una connessione in ingresso mostra un REMOTE_ADDR identificato come IP di datacenter con risk score elevato, mentre X-Forwarded-For contiene un IP diverso e forse residenziale, l’indicazione di uso proxy è forte. A quel punto puoi usare l’informazione per richiedere un’autenticazione aggiuntiva, bloccare la richiesta o semplicemente registrarla per ulteriori indagini.

Conclusion

Riconoscere nei log i proxy basati su browser è un’attività a più livelli: richiede attenzione, conoscenza dei dettagli HTTP e il supporto di intelligence esterna. Nessun segnale è infallibile, ma una strategia solida aggrega più indicatori, dall’origine dell’IP agli header HTTP, fino alle caratteristiche della connessione. Per chi gestisce applicazioni web, saper leggere questi pattern è essenziale per proteggere sicurezza e integrità dei dati.

Per controllare il tuo IP o testare alcuni di questi concetti, puoi usare lo strumento gratuito di IP lookup su guarda.net.

La tua connessione