Il timeout della sessione può prevenire o mitigare diversi tipi di attacchi. Di seguito vengono in mente.
Workstation non protetta. Boss lascia la scrivania per il pranzo, l'impiegato si siede e si concede un aumento.
Dispositivi condivisi. Donald Trump utilizza un iPad gratuito presso il Resort Mar-a-la-go. Il terrorista è in grado di ottenere iPad in seguito. Ottiene codici nucleari.
Forza bruta. L'attacco FREAK riduce la crittografia SSL / TLS a 512 bit; server farm contenente 1.000 gameplay PS-4 incrina la chiave in poco più di 31 minuti.
Solo i siti con un timeout della sessione di 30 minuti sfuggono alla catastrofe.
Session identifier theft. Odd Job Trojan infetta i browser di tutto il mondo e invia le chiavi di sessione a un hacker situato a Hoboken, nel New Jersey. Hacker ha tutto il tempo del mondo per setacciare le chiavi raccolte e usarle per scopi nefandi. Alcune chiavi non funzioneranno più quando arriverà a loro, quelle con i timeout di sessione.
CSRF. Hacker invia un milione di email con una GIF divertente che si collega a https://www.wellsfargo.com/Transfer.aspx?ToAccount=1234&Amount=100000
. Del milione di destinatari di e-mail, 10.000 li aprono. Di questi, 100 sono ancora registrati in Wellsfargo perché il timeout della sessione è troppo lungo. Hacker ottiene milioni di dollari, si ritira in Costa Rica, dove ora passa il tempo pubblicando su Stack Exchange.
Se non si implementa il timeout della sessione, si è più vulnerabili a tutti i tipi di attacchi sopra indicati. L'uso di una connessione HTTPS e / o l'uso di un identificatore di sessione casualmente graficamente sono passaggi validi e importanti, ma nessuno dei due ha salvato nessuno negli attacchi precedenti.
Solo tu puoi decidere se il rischio degli attacchi di cui sopra è abbastanza importante da compensare l'ulteriore disagio per l'utente finale. Se è solo un'app social, forse no. Se si tratta di un'applicazione bancaria, quasi certamente sì.