Perché lo stesso criterio di origine è basato sul nome host e non sull'IP?

3

La stessa politica di origine consiste nel limitare una pagina per accedere a un altro documento dall'accesso ai dati. Perché hanno un'origine diversa dove SOP definisce un'origine come segue.

An origin is defineed as protocol, host-name and port. If page or document is there then the SOP does apply to it if it matches these three.

Mi chiedo

Why the SOP is based on a Host-name and not on IP address ??

Se SOP è basato sull'indirizzo IP, quali problemi avremo. Attualmente SOP può essere attaccato usando il DNS dove rebinding Attacker vuole ottenere l'accesso alla rete dietro un firewall e abusare di Time-To-Live del DNS per bypassare SOP.

    
posta Dumb 11.07.2018 - 18:26
fonte

1 risposta

3

È molto comune avere più domini sullo stesso indirizzo IP e spesso questi domini sono controllati da parti diverse. Questo è tipico per l'hosting a basso costo e per CDN come Cloudflare. Avere la stessa politica di origine basata solo sull'indirizzo IP renderebbe possibili attacchi tra domini. Ciò consentirebbe comunque di utilizzare sia l'indirizzo IP che il nome host combinati come restrizioni.

Inoltre, lo stesso dominio potrebbe essere ospitato da più indirizzi IP, ad esempio con indirizzi IP geografici specifici o con bilanciamento del carico basato su DNS (ad esempio DNS round-robin). Limitare il SOP a uno specifico indirizzo IP per lo stesso hostname porterebbe a comportamenti imprevisti, ad esempio a volte le richieste all'interno dello stesso hostname funzionano e talvolta no. Pertanto, limitare la SOP in aggiunta all'IP causa problemi di affidabilità.

Questo lascia solo il SOP come lo è attualmente, cioè limitato al nome host ma non all'indirizzo IP. Sfortunatamente questo lascia aperto agli attacchi di rebinding DNS. Ma, assumendo che l'hacker non controlli il DNS per il nome host originale di un sito, bypassando SOP con il rebinding DNS funziona solo se l'host di destinazione non controlla correttamente l'intestazione Host nella richiesta, cioè consente un nome host controllato da un hacker all'interno la richiesta. Pertanto, questo rischio può essere mitigato controllando correttamente l'intestazione Host sul server. Può anche essere mitigato utilizzando HTTPS poiché il server non ha un certificato che corrisponde al nome host controllato da un hacker e il browser rifiuterà quindi la connessione.

    
risposta data 11.07.2018 - 18:35
fonte

Leggi altre domande sui tag