Cracking doppia password del router criptata?

27

Ho notato nel codice HTML del mio router questo parametro:

form.addParameter('Password', base64encode(SHA256(Password.value)));

Quindi quando digito la password passw ottengo questo tramite sslstrip :

2018-09-25 21:13:31,605 POST Data (192.168.1.1):
Username=acc&Password=ZTQ1ZDkwOTU3ZWVjNzM4NzcyNmM2YTFiMTc0ZGE3YjU2NmEyNGZmNGNiMDYwZGNiY2RmZWJiOTMxYTkzZmZlMw%3D%3D

Questo hash è facile da decifrare tramite bruteforce / dictionary? Sono ancora un principiante, ma mi sembra una doppia crittografia. Inoltre, c'è un modo più veloce per ottenere questa password rispetto al cracking?

    
posta MyWays 25.09.2018 - 21:18
fonte

4 risposte

71

È un hash sha256 non salato base64. Non è una doppia crittografia, ma semplicemente una codifica non necessaria.

Un hash non salato significa che è banale cercare l'hash su Google e probabilmente troverà il risultato.

    
risposta data 25.09.2018 - 21:25
fonte
84

I URL decodificato, poi decodificato da Base64 , poi passò a un database di hash in linea .

Il risultato è stato:

Hash                                                                Type    Result
e45d90957eec7387726c6a1b174da7b566a24ff4cb060dcbcdfebb931a93ffe3    sha256  passw

Il fatto che si tratti di un hash non salato rende facile la ricerca. Tutta la codifica è una comodità per il servizio di accesso, non un controllo di sicurezza.

Con un sale, non puoi semplicemente cercarlo, quindi avresti bisogno di bruteforce. Se conoscessi il sale, il successo dipende dalla password e dall'elenco di parole che usi. Esistono metodi per rendere la wordlist più efficiente per la bruteforcing, ma in definitiva è una funzione del tempo.

    
risposta data 25.09.2018 - 21:35
fonte
17

È banale interrompersi a causa di quanto segue:

  1. Base64 non è affatto una crittografia, è uno schema di codifica. La decodifica di Base64 è banale.

  2. SHA256 è un algoritmo crittografico progettato per la convalida dei dati e quindi progettato per essere veloce. Ciò significa che i computer specializzati con più GPU possono controllare l'hash delle password con SHA256 a velocità incredibili. Il record per il cracking delle password SHA256 al momento della scrittura è 21,4 GH / s (21 miliardi di hash al secondo) impostato da 25 GPU. Per l'intenzione di hashing sicuro una password SHA256 è una scelta sbagliata. Le funzioni di derivazione chiave sono la strada da percorrere. SHA256 è debole per l'hashing della password ma ottimo per la convalida di dati / messaggi.

risposta data 26.09.2018 - 00:50
fonte
13

Tutti concordano sul fatto che l'uso di un hash non salato è molto negativo e che sha256 non è una funzione di hash ideale. Tuttavia questa saggezza si riferisce alla memorizzazione di password, non alla loro trasmissione .

Non sappiamo come viene convalidata la password sul dispositivo di destinazione.

Per quanto ne sappiamo, i dati vengono successivamente passati attraverso una funzione di estensione della password, salata e sottoposta a hashing sul dispositivo di destinazione (che sarebbe sicuro) o semplicemente confrontata con un valore letterale memorizzato (non sicuro).

Se le comunicazioni con il router sono sempre tramite HTTPS come inidicato nella domanda, questo non aggiunge nulla alla protezione dei dati in transito ed è ridondante. Se la comunicazione fosse via HTTP, si potrebbe obiettare che impedisce alcuni attacchi banali molto (ma non, per esempio, un semplice attacco di replay).

    
risposta data 26.09.2018 - 11:43
fonte

Leggi altre domande sui tag