Chi è il custode del cancello?

4

Se si utilizza la protezione di base in una connessione SSL (https), non è vero che il server corrisponde alla combinazione utente / password, ma cosa succede dopo? Cosa impedisce al browser di accedere al server? Il browser entra in uno stato "autenticato", permettendogli di accedere al server? Oppure, il server in qualche modo offre un canale diverso al browser, una volta autenticato?

Chiedo questo perché se una qualsiasi delle responsabilità di autenticazione è affidata al browser, allora cosa succede se abbiamo un browser rinnegato / diligente che non segue le regole. In teoria, un browser modificato potrebbe farti trascinare in qualcosa ignorando l'autenticazione finale. Mi chiedo cosa sia sul lato server che determina se un utente è "autenticato" e quali modifiche consente alle transazioni HTTP di avere luogo.

Si noti che questo presuppone che utente / password siano stati trasmessi in modo sicuro utilizzando ssl, ma mette in dubbio la validità del browser se è l'agente di autenticazione.

In altre parole, chi è il gatekeeper (ad esempio, quello che può negare l'accesso): il server o il browser? Se si tratta del server, le credenziali o una sorta di chiave di autenticazione vengono trasmesse su ogni transazione indipendente? Oppure, se è il browser, il server è vulnerabile a un browser "dissoluto", ad esempio uno che è stato modificato, che può consentire l'accesso senza autenticazione?

Qualcuno può far luce su questo?

    
posta Dave Retz 20.05.2017 - 08:23
fonte

1 risposta

3

Con l'autenticazione di base, il nome utente e la password vengono inviati con ogni richiesta HTTP al server. Tuttavia, il browser non ti chiederà più volte per ogni richiesta perché utilizza semplicemente le stesse credenziali che hai già inserito finché l'autenticazione ha esito positivo.

Questo è simile se dai a qualcuno la chiave della tua casa. Tu dai la chiave una volta e la persona (il browser) la userà sempre per aprire la porta (cioè autorizzi contro il server). Solo se cambi il blocco (cioè cambia password o simile) la chiave originale non funzionerà più e la persona ne avrà bisogno una nuova. La persona non entra in uno stato autorizzato in alcun modo, è solo che la persona ha la chiave corrispondente al lucchetto.

EDIT: poiché il commento ha mostrato che non era completamente chiaro. Il server non si fida mai del browser a meno che non possa fornire le credenziali di autenticazione. Quindi non aiuterà a modificare il browser. Questo è lo stesso con la serratura nella porta: non si aprirà mai solo per una persona, non importa come sia questa persona. Invece il lucchetto si aprirà solo per la persona che ha e usa la chiave corretta.

    
risposta data 20.05.2017 - 09:03
fonte

Leggi altre domande sui tag