(credo) Capisco perché gli ID di sessione devono essere ruotati quando l'utente esegue l'accesso: questo è un passaggio importante per impedire session fixation.La rotazione dell'ID Session migliora la sicurezza?
Tuttavia, vi è alcun vantaggio nel ruotare in modo casuale/periodicamente ID di sessione?
Questo a mio parere fornisce solo un falso senso di sicurezza. Supponendo che gli ID di sessione non siano vulnerabili a ipotesi di forza bruta e trasmetti l'ID di sessione solo in un cookie (non come parte degli URL), allora un utente malintenzionato dovrà accedere al tuo cookie (molto probabilmente facendo lo snooping sul tuo traffico) per ottenere il tuo ID della sessione. Pertanto, se l'autore dell'attacco riceve un ID di sessione, probabilmente sarà in grado di annusare anche l'ID di sessione ruotato, pertanto la rotazione casuale non ha migliorato la sicurezza.
Penso che ruotare l'ID sessione (SID) al momento del login è necessario anche se è memorizzato in un cookie. Considera questo: l'utente malintenzionato esplora il sito Web su un computer condiviso e viene assegnato un SID (ma non effettua l'accesso). Quindi l'attaccante si allontana. Se il prossimo utente accede e il SID non viene ruotato, l'utente malintenzionato conosce il SID e può usarlo per mascherarsi come utente che ha effettuato l'accesso. * Questo scenario è un po 'inverosimile * (si spera che il computer condiviso sia ancora ha account separati), * ma possibile *. –
Quello che hai detto è una seria vulnerabilità (pensa ai chioschi). Stavo assumendo che il sito assegni un nuovo ID di sessione al login. Ovviamente, dovresti assegnare un nuovo ID di sessione al login. E no, questo attacco non è affatto inverosimile. –
concordato. (nota: il mio commento è stato principalmente in risposta alla prima frase della tua risposta) –