Perché i browser consentono ai siti Web pubblici di attaccare i siti intranet?

12

Quando visito un sito Web su Internet pubblico, il sito Web può far sì che il mio browser invii richieste a un indirizzo IP locale (come 10.0.0.1). Questo può essere usato per attaccare siti web interni, ad esempio attraverso Attacchi CSRF.

Perché i browser lo consentono? Se i browser lo vietassero, aumenterebbe la sicurezza? Se i browser lo vietassero, interromperà i siti e quanto sarà grande l'impatto? Possiamo quantificare l'impatto negativo o il vantaggio in termini di sicurezza?

Sfondo: gli indirizzi IP locali come 10.0.0.1 vengono utilizzati per i siti intranet interni. Sono non pubblicamente instradabili e sono usati solo per reti private .

Riferimento: vedi i commenti di Jeremiah Grossman in Case study sulla sicurezza del browser: le apparenze possono essere ingannevoli , coda ACM vol 10 no 10, 20 novembre 2012. Ha sollevato questa domanda e commenta su due possibili motivi, sebbene l'articolo non quantifica quanti siti potrebbero essere influenzati negativamente da tale modifica (per essere onesti, probabilmente era oltre la scope of the article).

Aggiornamento: apparentemente in stile metro IE 10 impone alcune restrizioni lungo queste linee (consultare la sezione intitolata Risorse di rete private).

    
posta D.W. 07.04.2013 - 09:29
fonte

2 risposte

4

Il problema non è limitato agli IP privati e pone un problema altrettanto grande ai servizi pubblici. Se si dovesse forzare una politica dello stesso dominio su tutte le risorse del sito, si incontrerebbero molti problemi con i siti che hanno più domini (google, yahoo, facebook) e chiunque usi il servizio CDN.

Ovviamente questo non sarebbe il caso quando si parla di spazio IP strettamente privato, ma non penso che sia la risposta al problema. Potrebbe impedire ai siti di attaccare automaticamente le risorse private, è comunque banale far sì che un utente ignaro clicchi su un link puntato alla stessa cosa.

Alla fine, la responsabilità è nelle mani del server di destinazione. Il server dovrebbe adottare misure per mitigare gli attacchi CSRF e analizzare solo i parametri GET per dati pubblici / non sensibili.

    
risposta data 07.04.2013 - 10:06
fonte
4

If browsers prohibited this, would it break sites

Penso che romperà SAML (e altri sistemi federativi / SSO simili). Questo ha necessariamente un modello in cui il Relying Party (probabilmente su una rete pubblica) deve inviare l'utente a un IdP (ad esempio una casella ADFS nel dominio Windows nella rete privata) e di nuovo uscire per accedere.

Anche in generale gli intervalli IP privati e le reti private non sono la stessa cosa; non è raro che un'azienda abbia una parte della sua rete privata su IP pubblicamente instradabili. Più ovviamente extranet semi-private. Potrebbe essere necessario fare riferimento alle risorse sulla parte IP privata della rete e non riceverebbero la protezione da un controllo basato solo su intervalli privati.

Quindi non potrebbe essere un divieto generale. Dovresti introdurre un nuovo set di controlli di whitelisting per quali siti sono autorizzati a fare riferimento a quali reti. Il vantaggio merita la complessità extra che questo comporta? Forse, ma non è una vittoria chiara.

    
risposta data 07.04.2013 - 11:28
fonte

Leggi altre domande sui tag