I metodi di hashing delle password più comuni per proteggere la tua piattaforma di e-commerce

Pubblicato: 2019-01-23

Nel 2018 l'hashing delle password sta diventando più importante che mai sia per i proprietari di siti Web di e-commerce che per le persone che forniscono applicazioni software commerciali.

La protezione dei dati degli utenti non è più un suggerimento, ma un requisito poiché i consumatori stanno iniziando a considerare la propria sicurezza e la protezione dei propri dati una priorità assoluta.

Poiché l'e-commerce continua a crescere a un ritmo solido, con le vendite di e-commerce che dovrebbero raggiungere poco più di $ 4 miliardi entro il 2020, la protezione dei dati degli utenti è ora più importante che mai.

Se un hacker o un attore malintenzionato ottiene l'accesso al database delle password e tali password sono archiviate in testo normale, l'intruso avrà accesso a tutti gli account utente sul tuo sito Web o applicazione.

Il modo consigliato per evitarlo è attraverso l'hashing della password.

Hack per l'e-commerce

Senza i protocolli di sicurezza informatica adeguati, i proprietari di negozi di e-commerce rischiano di mettere a rischio se stessi e i propri clienti. Non abbiamo bisogno di guardare oltre l'hacking Target del 2013 per capire come e perché l'hacking è una grave minaccia per le piattaforme di e-commerce.

Detto questo, i negozi di e-commerce più piccoli corrono un rischio ancora maggiore rispetto alle società più grandi a causa del fatto che hanno protocolli di sicurezza inferiori contro i criminali informatici. Due dei più grandi tipi di crimini informatici che i negozi di e-commerce più piccoli potrebbero dover affrontare includono gli attacchi di phishing, in cui vengono presi di mira i dati degli utenti come i numeri di carta di credito e le informazioni di accesso, e le frodi con carte di credito, in cui gli hacker tenteranno di estrarre i numeri di carta di credito e poi venderli sul mercato nero.

Come si spera ormai, la sicurezza del tuo negozio di e-commerce deve essere la massima preoccupazione per te e ciò richiederà l'adozione di una serie di misure di sicurezza, incluso l'hashing delle password.

Che cos'è l'hashing delle password?

Per capire come viene attualmente utilizzato l'hashing delle password nei sistemi di gestione dei contenuti e nelle applicazioni Web, dobbiamo definire alcune cose chiave.

Quando si esegue l'hashing di una password, in pratica la trasforma in una rappresentazione codificata o "stringa" e la si utilizza per evitare di archiviare le password come testo normale dove possono essere trovate da attori malintenzionati. L'hashing confronta il valore con una chiave di crittografia internamente per interpretare effettivamente la password.

Va inoltre notato che l'hashing è una forma di sicurezza crittografica diversa dalla crittografia. Questo perché la crittografia è progettata per crittografare e decrittografare un messaggio attraverso un processo in due fasi, ma come abbiamo appena esaminato, l'hashing è progettato per generare una stringa da una stringa precedente nel testo, che può variare in modo significativo con solo piccole variazioni di input.

Un'ulteriore misura di hashing che vedrai è quella che viene chiamata salting, che è semplicemente l'aggiunta di caratteri alla fine della password con hash per renderla più difficile da decodificare.

Simile alla salatura è ciò che viene chiamato condimento. Questo aggiunge anche un valore aggiuntivo alla fine della password. Esistono due diverse versioni di salting, la prima in cui si aggiunge il valore alla fine della password come accennato in precedenza e la seconda in cui il valore aggiunto alla password è sia casuale nella posizione che nel suo valore. Il vantaggio di questo è che rende molto difficili gli attacchi di Brute Force e alcuni altri attacchi.

Algoritmi di hashing attualmente utilizzati

Vedrai un'ampia varietà di metodi di hashing utilizzati sulle password a seconda della piattaforma. Questo può anche variare tra i sistemi di gestione dei contenuti.

Uno degli algoritmi di hashing meno sicuri è denominato MD5, creato nel 1992. Come puoi immaginare da un algoritmo creato nel 1992, non è l'algoritmo di hashing più sicuro. Questo algoritmo utilizza valori a 128 bit che sono molto più bassi degli standard di crittografia tradizionali, quindi significa che non è un'opzione molto sicura per le password e invece è più spesso utilizzato per requisiti meno sicuri come il download di file.

Il prossimo algoritmo di hashing comune che vedrai è SHA-1. Questo algoritmo è stato creato nel 1993 dalla US National Security Agency. Hanno aspettato alcuni anni per pubblicare l'algoritmo, tuttavia, nonostante sia stato sviluppato solo un anno dopo rispetto a MD5, all'epoca è significativamente più sicuro. Potresti ancora vedere alcune password sottoposte a hash in questo modo, ma sfortunatamente questo standard è stato deciso per non essere più sicuro.

Come aggiornamento a SHA1 pubblicato dalla National Security Agency, SHA-2, è stato creato nel 2001. E come il suo predecessore, non è stato creato specificamente dalla NSA ed è stato standardizzato solo pochi anni prima. Rimane ancora un metodo praticabile per l'hashing sicuro delle password.

Un altro algoritmo di hashing della password che vedrai è Bcrypt. L'algoritmo BCrypt include un sale progettato per proteggere dagli attacchi di forza bruta.

Uno degli strumenti utilizzati da BCypt per rendere più difficili gli attacchi Brute Force è il rallentamento dell'operazione o del programma Brute Force che potrebbe essere utilizzato da un attore malintenzionato. Ciò significa che se viene tentato un attacco di forza bruta, probabilmente ci vorranno anni se avrà successo.

Simile a bCrypt è Scrypt. Questo algoritmo di hashing della password estende anche la chiave con difese aggiuntive come i sali (progettato per aggiungere dati casuali a un input di funzione hash per creare un output più unico) e per rendere quasi impossibili gli attacchi di forza bruta con un ulteriore vantaggio di Scrypt è che è progettato per occupare una grande quantità di memoria del computer quando viene attaccato da Brute Force. Ciò significa che ha una misura aggiuntiva per estendere il tempo che un attacco di forza bruta può impiegare per avere successo.

L'ultimo algoritmo di hashing delle password che vedremo sui sistemi di gestione dei contenuti e sulle applicazioni web è PBKDF2. Questo algoritmo di hashing della password è stato creato da RSA Laboratories e, come gli algoritmi menzionati in precedenza, aggiunge anche estensioni all'hash per rendere più difficile Brute Force.

Memorizzazione di password hash

Dopo il processo di hashing e dopo che l'algoritmo utilizzato ha svolto il suo lavoro, l'output della password sarà una rappresentazione esadecimale codificata di se stessa.

Ciò significa che sarà una serie molto lunga di lettere e numeri che sarà ciò che viene memorizzato dal sito Web o dall'applicazione nel caso in cui un hacker ottenga l'accesso a tali informazioni.

Quindi, in altre parole, se un hacker entra nel tuo sito di e-commerce e trova un database di password utente, non sarà in grado di usarle per accedere direttamente all'account di un utente.

Piuttosto, lui o lei dovrebbe interpretare le lettere e i numeri casuali per capire quale sarebbe effettivamente la tua password.

Memorizzazione di password con hash

Password multiple per siti web

A volte ti imbatterai in situazioni in cui gli utenti del tuo negozio di e-commerce potrebbero dover condividere password tra servizi diversi.

Un esempio potrebbe essere che hai una build separata della tua applicazione per dispositivi mobili che è forse una tecnologia diversa o su una piattaforma diversa rispetto alla tua versione basata sul web. In questo caso, dovresti sincronizzare le password con hash su più piattaforme, il che può essere molto complicato.

Fortunatamente, ci sono aziende che possono aiutare con la sincronizzazione multipiattaforma delle password hash. Un esempio potrebbe essere FoxyCart, che è un servizio che consente la sincronizzazione della password hash da un'applicazione all'altra.

Avvolgendolo

Oltre a Foxy, ci sono molte altre piattaforme di e-commerce popolari tra cui scegliere. Indipendentemente da quello che utilizzi, mantenere sicuro il tuo negozio di e-commerce online deve essere una priorità assoluta e l'hashing delle password è una delle migliori e anche una delle misure di sicurezza più trascurate che puoi impiegare oggi.

Più correttamente è l'hashing di una password, e se utilizza gli standard più recenti come l'anello di sale e pepe, in pratica l'unico modo per un attore malintenzionato di ottenere la password di qualcuno sarebbe tramite un attacco di forza bruta.

E con i metodi che abbiamo menzionato sopra e gli algoritmi utilizzati dai vari sistemi di gestione dei contenuti, anche gli attacchi di forza bruta stanno diventando sempre più difficili. Cioè, solo se implementi correttamente questi strumenti.