Forum 

Forum AspNuke.it - Il tuo Portale OpenSource in ASP

Crittografia password

Autore Messaggio
djechelon

Principiante
Principiante
7 Discussioni



Profilo - djechelon
08 febbraio 2005 alle 22:19:14 Profilo - djechelonInvia un messaggio privato Rispondi quotando
Ciao a tutti (di nuovo :p),
ho curiosato un po' nel database e nel codice e mi sono accorto che AAAAAAARGHHHH le password sono in chiaro.
Mi è crollato il mondo addosso in un istante. Persino ASPNuke "originale" (www.aspnuke.com, tradotto in Ita da me ma purtroppo non funzionante su server IIS6) usa un sistema di crittografia per le password utente!!

Ho scritto poco fa un topic sulla sicurezza parlando dei codici di conferma grafici. Si è parlato di MD5.

In effetti, criptare la password in MD5 aumenta di molto la sicurezza. Se infatti qualche hacker anche non eccessivamente professionista "ruba" i database MSAccess ad un webmaster poco accorto che non ha impostato permessi adatti legge le password e accede. Certo cambiare la directory DB per coloro che non hanno hosting Aruba e che comunque non possono settare permission in IIS è molto utile, ma non 100% sicuro.
Se la password invece è criptata, ci vorrebbero giorni per trovare, con un de-md5 una serie di password compatibili. Certo non infallibile come metodo di sicurezza ma sicuramente più sicuro delle password in chiaro.

Dunque, senza fare inopportune prese di posizione, faccio una piccola considerazione. Che io sappia, ASP dovrebbe nativamente supportare MD5 con un'apposita ed omonima funziona. Se sbaglio ditemelo semplicemente.
Se mi sbaglio, voglio però sottolineare DUE altri elementi.

Numero uno: curiosando tra i file, ho visto uno script sullo SHA1, non ne ho visto il contenuto ma suppongo sia una libreria per calcolare l'hash di una stringa
Numero due: non so MSAccess, ma MySQL integra la funzione MD5, richiamabile da query.

Nel caso sia valida solo la seconda, e solo per MySQL, io inseirei un piccolo case all'interno di tutte le SQL dirette al database utenti e che coinvolgono la password. Se il DB è proprio MySQL (spero che la maggior parte dei webmaster ASPNuke usi MySQL) allora ci ficco dentro un MD5 dritto in query. In questo modo le password al database vengono passate criptate.
In extremis, io proverei a usare il suddetto SHA1 (se mi sono sbagliato sulla natura di quel file è facile procurarsi una libreria SHA1 ASP in Rete, ne distribuisco sempre una io in PHP nei miei programmi qualora gli utenti non abbiano installato le librerie).
SHA1 è unilaterale, quindi utilizzabile solo per verifiche (funzione non iniettiva per chi mastica Matematica). In effetti, la password non andrebbe mai "rivelata", e qui faccio una parentesi. Se ASPNuke, in fase di password smarrita, rispedisce la password all'email, la scelta di password in chiaro è giustificata. In questo caso è sufficiente avanzare la proposta di rendere il lost password un ripristino password e tutti dormiamo sonni tranquilli!

Che ne pensate? Sono aperto a tutte le opinioni.
emu

Moderatore

Esperto
Esperto
1714 Discussioni



Profilo - emu
09 febbraio 2005 alle 07:17:53 Profilo - emuInvia un messaggio privato Rispondi quotando
Modificato il 09 febbraio 2005 alle 07:22:37

Se tu, anziche' curiosare, avessi letto qualche spiegazione, avresti visto che sono in chiaro solo per compatibilita' con la versione 1.2.

www.aspnuke.com NON E' l'aspnuke originale, ma una copiatura successiva.
L'aspnuke originale e' http://www.asp-nuke.com/

Come hai visto, aspnuke consente di crittografare le password con SHA1 (a cos'altro pensavi servisse la funzione che hai trovato?), ma esiste un mod (scritto da me) per farlo con MD5 (ancor piu' sicuro di SHA1).
ASP 3.0 NON supporta alcuna funzione MD5 (ho dovuto cercare l'algoritmo in rete), mentre probabilmente ASP.NET si.

Neanche Access implementa la MD5, e purtroppo la maggior parte degli utenti NON PUO' usare MySQL semplicemente perche' il loro provider non glielo fornisce.

Per quanto riguarda il recupero password, se e' attiva la crittografia delle password, si tratta in effetti di una rigenerazione della password che viene inviata all'utente.

Ma in home page c'e' un link al mio tutorial sulla crittografia delle password, non facevi prima a leggerlo?

Ciao
---------------
development@aspnuke.it
djechelon

Principiante
Principiante
7 Discussioni



Profilo - djechelon
09 febbraio 2005 alle 13:57:54 Profilo - djechelonInvia un messaggio privato Rispondi quotando
Beh, devo ammettere che non è proprio la mia passione spulciare le documentazioni... :-)
Ma fermo un momento. Non capisco il discorso compatibilità.
Io installo ASPNuke da zero e che compatibilità dovrei aver garantita? Capisco l'upgrade (anche se uno scriptino semplice semplice che modifica tutti i record nel db non guasta mai). Quindi perchè non rendere default, durante l'installazione, le password criptate almeno in sha1? Per il tuo mod lo scarico subito e spero venga presto reso parte integrante del portale. La sicurezza, oltre al dinero, non è mai abbastanza. :-P

Comunque confermo che ASP.NET supporta pientamente MD5.

Grazie per l'aiuto.
djveleno

Amministratore

Esperto
Esperto
1025 Discussioni



Profilo - djveleno
09 febbraio 2005 alle 14:53:55 Profilo - djvelenoInvia un messaggio privato Rispondi quotando
Lascerei il compito ad Emu per la risposta, ma, mi sembra che tu non conosca Aspnuke, almeno nella nuova versione, lo script per la migrazione dei DB è stato fatto, ed è per questo motivo, per la compatibilità con la predente versione, che conta un elevato numero di utenti, che la criptatura della password è una libera scelta del webmaster e non una imposizione del setup.
Ciauzz DJ
---------------
A lavare la testa ai somari, ci si rimette l'acqua e il sapone!

http://aspnuke208.somee.com/Default.asp

Zalabard

Moderatore

Esperto
Esperto
781 Discussioni



Profilo - Zalabard
09 febbraio 2005 alle 15:27:05 Profilo - ZalabardInvia un messaggio privato fsarzana@hotmail.com 228-720-524 Rispondi quotando
Io sono un po' fanatico di sicurezza e non appena Emu ha messo a disposizione le routine di crittografia le ho subito usate e riportate sui miei siti.

Devo però dire che questa non può essere un'imposizione, anche perché, se un webmaster vuole crittografare le password deve anche avere dei metodi di recupero delle stesse; il che vuol dire che, COME MINIMO, deve aver richiesto la conferma via email. Sappiamo tutti che non sempre questo è fattibile e/o viene impostato dal webmaster, magari per comodità o velocità de registrazione.

Anche per questo non abbiamo resa obbligatoria o di default la crittografia, perché dovremmoanche rendere bbligatoria la ceritificazione via email....
In sostanza ognuno è libero di usare quello che vuole: le routine ci sono, le pagine di migrazione anche, le spiegazioni, i suggerimenti, gli articoli, ci sono tutti.... chi vuole intendere intenda, e chi non vuole prosegua a suo rischio e pericolo.
---------------
Frank Zalabard 8) (sviluppo@aspnuke.it)
djechelon

Principiante
Principiante
7 Discussioni



Profilo - djechelon
09 febbraio 2005 alle 20:54:44 Profilo - djechelonInvia un messaggio privato Rispondi quotando
Adesso grazie a Zalabard capisco perfettamente.

Io rispetto le vostre opinioni ma voglio comunque esporre le mie (e immagino voi siate sempre alla ricerca di opinioni GIUSTOOOOOOOOO?)

Per prima cosa io renderei "di serie" in un portale la conferma dell'email. Per due principali motivi.
Il primo è di ordine legale qualora il sito abbia iniziative commerciali del tipo newsletter: la legge italiana è severa sulla privacy, quindi se io mi iscrivo con l'indirizzo di un amico succedono situazioni poco piacevoli... Ma sicuramente i webmaster con queste intenzioni attiveranno questa caratteristica (vedi l'altro topic sulla sicurezza della conferma di registrazione).
Il secondo motivo è una questione di controllo. Un webmaster solitamente vuole avere il controllo della situazione sul sito. In effetti non sto qui a polemizzare o a criticare, ma lascio solo un piccolo pensiero sul "Nuke che vorrei".

Io comunque parlando di default intendevo definire uno standard, non forzare nessuno. Secondo ME, se ASPNuke usasse di default password crittografate, sistemi di conferma email e un più credibile (senza offesa) codice di conferma iscrizione allora sarebbe ad un livello molto più alto dell'attuale.

Questo lo dico a pochi giorni dal completamento dell'engine di un mini portale dedicato a Bit Torrent (si chiama phpMyBitTorrent e vedrà la luce come versione ASP e spero modulo ASPNuke e DotNetNuke durante l'estate). Almeno "lì" la mia audience (webmaster di non piccoli portali di tutto il mondo) preferisce tenersi default queste cose.
OVVIAMENTE se gli italiani qui preferiscono fare altrimenti ASPNuke penso debba adattarsi, pur offrendo tool più avanzati.

Adesso è proprio il caso di leggermi qualche bel tutorial e preparare il mio nuovo sito.

Byebye scriverò su questi forum in caso di help.
djveleno

Amministratore

Esperto
Esperto
1025 Discussioni



Profilo - djveleno
09 febbraio 2005 alle 21:28:38 Profilo - djvelenoInvia un messaggio privato Rispondi quotando
Io se fossi in te, invece, non farei grande pubblicità ad un portale dedicato a BitTorrent..... (anche perchè, non sai chi c'è dall'altra parte a leggerti, queste poche parole dovrebbero bastarti!!!!)
Veniamo al dunque del post, effettivamente tutti sono liberi di esprimere una propria opinione, è anche grazie a questo che AspNuke è cresciuto, poi, sul cosa metteresti tu di default o cosa metterei io, o altri, potremmo discuterne dei mesi senza approdare a nulla, la sola cosa che ti posso dire è che, molti utilizzatori di questo programma, lo sono diventati perchè, hanno la possibilità di avere un portale personale senza "nessuna conoscenza" di programmazione, questo si traduce in, moltissimi utenti non sanno neanche cosa significa MD5, criptatura delle password SHA1 e quante altre diavolerie ci inventiamo.... per cui, è necessario pensare in due modi ben distinti, uno, dedicato a questi, moltissimi, utenti, l'altro, riservato a pochi eletti che "ne sanno".
Secondo ME, se ASPNuke usasse di default password crittografate, sistemi di conferma email e un più credibile (senza offesa) codice di conferma iscrizione allora sarebbe ad un livello molto più alto dell'attuale.

Poi se mi spieghi cosa intendi per "un più credibile codice di conferma iscrizione" magari capisco anchio....
così come lo hai scritto, mi fa pensare che siamo un branco di idioti!!! Il "senza offesa" potevi risparmiartelo, lo avrei considerato "sottinteso", invece così, mi viene da pensare che quanto pensavo prima sia suffragato da una qualche oscura verità!
A questo punto, come ultima riflessione, mi chiedo, è pensabile che la prossima versione di Aspnuke la possa scrivere tu, magari dedicata solo agli addetti ai lavori o magari a qualche Marziano in transito?
Con ossequio DJ
---------------
A lavare la testa ai somari, ci si rimette l'acqua e il sapone!

http://aspnuke208.somee.com/Default.asp

djechelon

Principiante
Principiante
7 Discussioni



Profilo - djechelon
10 febbraio 2005 alle 01:57:45 Profilo - djechelonInvia un messaggio privato Rispondi quotando
Codice più "credibile" era un eufemismo. Ho aggiunto il senza offesa perchè non vi ritengo assolutamente degli idioti ma dei rispettabili programmatori che se non fosse per loro saremmo schiavi di Unix.
Diciamo che quel codice mi è sembrato proprio il mio user id, e da lì tutti i problemi relativi alla sicurezza.

Comunque accetto in pieno la risposta di veleno sul target di ASPNuke e sulla loro preparazione in merito a programmazione e crittografia. Vengo da un mondo (quello di PHP Nuke) dove se non sei esperto puoi anche creare un portale, ma presto avrai problemi. Niente di più.
E inoltre il fatto del livello più alto dell'attuale non significa assolutamente che adesso sia ad un livello scarso. Anzi!! Forse un po' per le limitazioni del linguaggio e un po' perchè "Winzozz" non è visto bene da molti sysadmin ASPNuke non potrà avere il trono dei CMS. A me però basta avere un buon portale in ASP da installare sul mio server WINZOZZ :-) per dire a tutto il mondo (limitiamoci ai miei visitatori appassionati di Final Fantasy... lol) che Linux non è meglio di Win.
emu

Moderatore

Esperto
Esperto
1714 Discussioni



Profilo - emu
10 febbraio 2005 alle 06:42:28 Profilo - emuInvia un messaggio privato Rispondi quotando
A parte il fatto che la conferma tramite email e' attiva di default, in aspnuke, mi piacerebbe sapere come potremmo fare a rendere piu' sicuro il meccanismo di conferma.
Ti ho gia' spiegato che in asp 3.0 non si puo' generare un'immagine con un codice scritto dentro, e non vedo quale sia il problema di conoscere il proprio id utente (essendo un numero casuale che dovrebbe essere calcolato in base al valore del clock del server in quel momento).
Puoi essere piu' chiaro?
Ciao

---------------
development@aspnuke.it
djechelon

Principiante
Principiante
7 Discussioni



Profilo - djechelon
10 febbraio 2005 alle 14:31:15 Profilo - djechelonInvia un messaggio privato Rispondi quotando
E io ti ho già detto in un altro post (non so chi mi ha risposto) che in ASP 3.0 si può generare una combinazione alfanumerica e da quanto abbiamo detto qui la si può criptare in SHA1/MD5.

Ad ogni modo questa è l'ultima risposta stiamo per degenerare. So essere il moderatore di me stesso, io..
 1  2  >>

Log in

Login
Password
Memorizza i tuoi dati:

Cerca

 

Sostieni AspNuke

Un piccolo gesto per aiutarci a mantenere AspNuke.it online

Promo

MusicWebItalia.it
Video Testi Traduzioni Spot Colonne sonore Accordi e Spartiti gratis.

Visitatori

Visitatori Correnti : 144
Membri : 0 offline Anna

Iscritti

 Utenti: 18940
Ultimo iscritto : glauco
Lista iscritti
Messaggi privati: 3373 Commenti: 2210 Immagini: 39 Downloads: 144 Articoli: 49 Pagine: 101 Siti web: 425 Notizie: 180 Sondaggi: 11 Preferiti: 202890 Post sui forum: 51195 Libro degli ospiti: 4 Eventi: 7

Versioni

Temi