Proxy
Da Security e-Book.
Durante i primi anni di diffusione di Internet come si conosce oggi, é nata la necessità di interconnettere le reti aziendali private, dette internet (con la “i” minuscola, ovvero Interconnected Networks) con la “big Internet”. La necessità non era quella di un firewall, perché allora gli attacchi da intrusi erano esigui e non si percepiva il potenziale problema di sicurezza, ma quella di interconnettere la rete pubblica di accesso con quella privata. Oggi questo problema si sarebbe risolto attraverso il Network Address Translation (NAT), ma la tecnologia non era ancora disponibile: nascono così i proxy, ovvero software in grado di fare da “ponte” tra una rete e l’altra.
Esistono due tipologie di proxy, i circuit-level e gli application-level. I primi agiscono a livello UDP/TCP, creando un “circuito” tra il client e il server, senza però interpretare il protocollo applicativo: il più significativo esempio in questo campo é il protocollo socks. I secondi agiscono a livello applicativo, interpretando i dati e i comandi di una specifica applicazione, ad esempio HTTP o FTP. Il socks é documentato nell’RFC 1928 ed é disponibile attraverso diverse implementazioni, alcune di queste sono disponibili gratuitamente come Dante e il socks della NEC. Il grosso pregio del protocollo socks é che permette di fare da proxy per qualsiasi applicazione TCP o UDP, in quanto non interpreta il contenuto applicativo, e permette l’autenticazione degli utenti, ma il difetto é che bisogna aggiungere un ulteriore software nel client. Inoltre, non interpretando il contenuto degli applicativi, é impossibile avere delle policy su quali contenuti l’utente é abilitato, ad esempio non si può vietare l’utente alla navigazione sul di un sito di notizie, abilitando la webmail. Gli application-level proxy sono invece in grado di interpretare il contenuto del traffico, limitando o abilitando determinate URL, ed includono la possibilità di autenticare l’utente. Sono questi tipi di applicativi che vengono chiamati generalmente proxy e in particolare ci si riferisce ai proxy HTTP.