Login ricordante postato il 03/04/2009 10:45:04 nel forum programmazione, gdrcd, open source, hosting e modificato da blancks il 03/04/2009 11:01:48
Si è discusso di come rendere un login sicuro a tecniche di sniffing, ora il mio quesito è quello di fare un modulo ricordante sicuro.
Personalmente avevo pensato una cosa del genere:
- All'atto della registrazione mi viene creato l'utente con la pass criptata in sha1 e una stringa alfanumerica random unica solo per lui.
- Quando fa il login e spunta il ricordante io salvo nel cookie le seguenti informazioni:
id | hash( sha1(pass) + stringa random unica per pg)
- Quando l'utente torna sul sito, faccio la ricerca per id, prelevo pass e stringa random dal db, ricompongo l'hash e confronto con quello nel cookie, se corretto procedo con l'autenticazione.
Ora, in termini di sicurezza, ritenete possa essere sicura una cosa del genere oppure avete suggerimenti ?
Pagine → 1
03/04/2009 11:23:05
Io non manderei mai al client la password anche se criptata ...
Io gestirei piuttosto un sistema di sessioni usa e getta ovvero
Una tabella su gd con i campi
id_utente
id_sessione
expire
dove:
id_utente è l'id del pg
id_sessione è una stringa alfanumerica casuale lunga 50-100 caratteri
expire è oggi + una settimana ad esempio
quando faccio login e spunto la casella di "memorizza login" creo un record sulla tabella ed un cookie contente id utente ed id sessione.
Quando ritorno sul login eseguo in sequenza:
- query che ripulisce la tab sessioni dai record scaduti
- se c'è un cookie lo cerco sulla tabella
- se trovo la corrispondenza aggiorno l'expire su db e faccio login diretto
- altrimenti cancello l'eventuale cookie scaduto/fasullo e mostro la normale schermata di login
Tsu
03/04/2009 11:41:45 e modificato da blancks il 03/04/2009 11:44:47
03/04/2009 11:48:39 e modificato da tsumi il 03/04/2009 11:57:50
No purtroppo non è equivalente
password random ed id sono fissi nel tempo (l'unica che potrebbe cambiare è la password, ma è altresì vero che la password non viene cambiata spessissimo ... non ogni settimana almeno).
Quindi non importa se mi è impossibile decifrare il tutto, anche averlo cifrato mi basta per loggarmi.
Mi basterebbe conoscere questa stringa e crearmi un cookie ad hoc per loggarmi.
Il mio sistema delle sessioni usa invece solo l'id come valore fisso (che peraltro non è manco segreto) + una stringa casuale e valida solo per un tempo limitato. Anche venisse rubata basta essere fuori dal tempo di expire perchè sia del tutto inutile
EDIT:
Se fai rigenerare la stringa ad ogni login ha già più senso. Però c'è un però ... se ti logghi da più pc finisci ogni volta per invalidare la sessione dell'altro rigenerando la stringa casuale. Avendo invece una tabella puoi avere più sessioni per più pc/browser indipendenti.
03/04/2009 15:38:35
03/04/2009 15:38:35 e modificato da blancks il 03/04/2009 15:39:19
03/04/2009 16:42:01
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Intervista allo staff del play by chat potteriano Dissendium Draconis
I dati del generatore di rank sono stati aggiornati!
World Without Heroes → Affronta le forze occulte che minacciano il mondo in World Without Heroes, un gdr play-by-mobile su Whatsapp basato sulle teorie del complotto!
Pandora Upside Down High School: Viaggio nel tempo! Chiusura temporanea iscrizioni
alixialice ha recensito Due Città
Sea of Conquest: Aggiornamento 1.1.330! 🏴☠️
World of Warship: Anteprima della collaborazione con Star Trek
Storie di Agarthi → Un Varco si apre davanti a te, un mondo tra i mondi è a portata di mano. Lasciati alle spalle le certezze, diventa quello che hai sempre cercato.
firefox000 ha recensito Dusk
asoldsoul ha recensito Age of Crystals
vinavil ha risposto alla discussione: Quale ambientazione serve al panorama?
vinavil ha risposto alla discussione: Quando un ambientazione si esaurisce?
Due Città → Le Due Città - Gioco di Ruolo Fantasy Storico. Scrivi la tua storia e lasciati trasportare dalla fantasia!
NosTale: Scrigno Cavaliere delle favole infinito
Enlisted: Caduta di rifornimenti!
Epic Wizardry RP: Changelog N. 1 - Epic Wizardry Rp
chetedevodi ha recensito Dusk
Due Città → Le Due Città - Gioco di Ruolo Fantasy Storico. Scrivi la tua storia e lasciati trasportare dalla fantasia!
Allineamenti GoT - Tu di che allineamento sei? Special guest: A Game of Thrones!
Storia del Gdr - Andiamo a ricercare le fondamenta del gioco di ruolo, da dove questo nasce e come si sviluppa nel tempo!
Guida RpG - Una guida per iniziare a giocare ai giochi di ruolo (RPG)
Menzoberrazan - Entra negli oscuri cunicoli dei Drow. Leggi la nostra recensione di questo particolare GDR
Giochi Storici - Lista completa dei giochi di ruolo online storici
Tolkien e Paganesimo - Tesi di laurea sul Paganesimo e Cristianesimo nell'opera di Tolkien