I proxy a modulo web cambiano l'origine del browser, non solo l'IP in uscita
Distinguere un sito proxy con campo URL da un proxy nativo del browser e spiegare perché accessi e script complessi possono comportarsi diversamente.
Una pagina con un campo URL è un'applicazione web. Inserire lì una destinazione chiede a quell'applicazione di recuperare e presentare il contenuto. È una disposizione diversa dal dire al browser di usare un proxy HTTP o SOCKS.
Con un'impostazione proxy nativa, il browser continua a trattare l'URL di destinazione come il sito web. In un proxy a modulo web tradizionale, la pagina visibile viene servita tramite lo schema URL e l'origine dell'applicazione proxy stessa. Il servizio può riscrivere link, script, intestazioni o cookie perché la navigazione continui.
| Comportamento | Perché la differenza conta |
|---|---|
| Controlli di stessa origine | Il browser valuta l'origine che ha effettivamente caricato |
| Cookie e reindirizzamenti | Il comportamento di dominio, percorso e contesto sicuro deve corrispondere agli URL presentati |
| Script che costruiscono nuovi URL | Le richieste possono sfuggire a un semplice schema di riscrittura dei link |
| Connessioni persistenti o WebSockets | L'applicazione proxy richiede una gestione compatibile esplicita |
Questo spiega un esito noto: un articolo semplice si carica, ma un editor di documenti o un flusso di accesso fallisce. Il fallimento non significa necessariamente che la destinazione rifiuti l'IP in uscita del servizio. L'intermediario potrebbe non riuscire a preservare le assunzioni dell'applicazione su URL e sicurezza del browser.
Distinguere anche dove termina TLS. Un servizio che recupera e ripubblica contenuti di destinazione si trova in una posizione di fiducia diversa da un normale relay CONNECT che trasporta una sessione cifrata. Vedere HTTPS sull'indirizzo del sito proxy stesso non stabilisce una connessione TLS end-to-end dal browser al sito originale.
Se lo scopo è la normale navigazione attraverso un'altra uscita, scegliere un endpoint HTTP o SOCKS dal proprio servizio o da un elenco di proxy e usare una configurazione proxy nativa supportata, come le impostazioni di connessione di Firefox. Questo di solito conserva di più la normale semantica di destinazione del browser. Un sito con campo URL può restare un'applicazione scelta deliberatamente, ma non dovrebbe essere presentato come la stessa interfaccia con meno configurazione.