Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    password in md5: irrecuperabile?

    Ciao a tutti. Dopo la lettura delle guide sul login sicuro mi sono sorte un paio di curiosità:

    1) salvare le password nel db già criptate è buona cosa, ma così facendo è davvero impossibile risalire alla password in chiaro? Immagino quei siti che, in caso di perdita dei dati inviano una mail con le varie info originali, tra cui la password sicuramente non criptata in md5: com'è possibile?
    2) ho notato che la pw inserita dall'utente in fase di login viene giustamente trasformata e poi confrontata con quella md5 nel database. A questo punto non riesco a capire che cosa si voglia preservare ( ) se non la password stessa, nel caso un malintenzionato entri nel database. Nulla quindi relativo alle sql-injection o ai tentativi iterati di login forzato (88802390840+ tentativi, magari appoggiandosi a qualche script).

    Ringrazio per qualsiasi delucidazione in merito .... e saluto.

  2. #2
    dunque, questa è una questione un po' spinosa che deve essere vista da più punti di vista:

    Considera, quando crei un utente devi permettergli di scegliersi una password e questa password la deve conoscere SOLO lui. A te, come amministratore, non interesserà mai sapere la sua password, né mai andrai a chiedergliela. Ci sono diversi siti che preferiscono tenere le password in chiaro proprio in casi tipo quello da te citato, l'utente ha dimenticato la password, per rimandargliela tramite e-mail. Peccato che gli amministratori (e gli sviluppatori) di questi siti non tengono in considerazione due cose:
    1- Inviando via mail (che è un protocollo proprio per sua natura insicuro) una password chiunque potrebbe sniffare la mail, o, in caso l'account dell'utente venga crackkato, leggerebbe la mail.
    2- Se il server viene crackkato, tutti gli account sono a rischio, e chiunque abbia sia entrato, potrebbe autenticarsi con qualsiasi utente (quindi non sapresti più se chi ha fatto quella determinata azione è l'utente o il cracker)

    Proprio per questo si utilizza l'hashing delle password. MD5 è il classico sistema utilizzato, l'hash di MD5 è "abbastanza" sicuro, nel senso che, si, c'è un modo per ottenere la password, ma è comunque complicato, e verrebbe usato solo per siti con particolari funzioni. Per dirti, il mio sito, dove permetto di scaricare le mie foto solo ai miei amici, che gliene frega ad uno di sbattersi per le mie foto? Certo, se offrissi anche i dati bancari a particolari account, sarebbe un problema.

    In ogni caso, l'MD5, come gli altri sistemi di hash, permette di assicurare che, una volta criptata, la password non è più ritrovabile. A te interesserà solo controllare se l'utente ha inserito la password corretta, effettuando l'hash MD5 sul dato inserito e confrontandolo.

    Quello che dici sulle sqlinjection è giustissimo, l'hashing serve solo a preservare la sicurezza delle password, per evitare che la copia username e password sia visibile, non solo ad un attaccante, ma anche a chi ha accesso al server.
    La questione di prevenire SQLinjection, dipende solo dal codice PHP che effettua la query, in modo che si assicuri che non vi siano altre query inserite nell'username.

    In ultimo, non capisco come sarebbe possibile fare una injection come quella che dici tu impunemente: qualsiasi amministratore noterebbe subito la cosa, 88802390840 di tentativi significano 88802390840 richieste alla stessa pagina dallo stesso IP a pochi istanti una dall'altra, io lo vedo metto l'IP in backlist, segnalo lo cosa alla polizia postale ed il tipo finisce sotto inchiesta.

  3. #3
    Grande artorius, ottima risposta... completa e professionale
    Hai chiarito tutti i miei dubbi, in particolare il primo più spinoso.
    Quello degli accessi selvaggi è una terza ipotetica questione che dovrò affrontare, magari supportato da tool come google analytics e simili.
    Rinnovo i ringraziamenti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.