Come posso rilevare se gli hash sono salati? [duplicare]

1

È possibile rilevare la funzione hash di un hash se non ho accesso al codice PHP? So che se un hash è una sorta di MD5, ma non so se c'è sale ecc.

    
posta guest343 13.11.2015 - 14:05
fonte

1 risposta

3

Alcuni strumenti fanno un'ipotesi plausibile sulla crittografia e sul tipo di sale, ma esistono numerosi tipi di schemi di crittografia, alcuni così strettamente correlati che gli hash sembrano quasi gli stessi.

Prendi ad esempio il seguente hash (modificato per proteggere il dork google): 0000000B84FF762C88DG6E16F324269EFCA186FA

Se chiedo a un classico come John the Ripper di decifrare senza specificare il tipo, ottengo la seguente risposta: Avviso: ha rilevato il tipo di hash "raw-sha1", ma la stringa è anche riconosciuta come "raw-sha1-linkedin" Avviso: ha rilevato il tipo di hash "raw-sha1", ma la stringa è anche riconosciuta come "raw-sha" Avviso: ha rilevato il tipo di hash "raw-sha1", ma la stringa è anche riconosciuta come "raw-sha1-ng"

Quindi, John eseguirà e tenterà di decifrare la password come "raw-sha1" ma potrebbe essere sbagliata.

Se inserisco lo stesso hash in hashcat-plus, si lamenta della lunghezza dell'hash e chiedo di specificare un tipo di hash. Tutto bene e bene suggerisco SHA1 ma ci sono anche numerose permutazioni disponibili che potrebbero significare una quantità infinita di tempo sprecato se si sceglie sbagliato. Per esempio. Hashcat fornisce le seguenti opzioni per SHA1

100 = SHA1 110 = sha1 ($ pass. $ Salt) 120 = sha1 ($ salt. $ Pass) 130 = sha1 (unicode ($ pass). $ Salt) 140 = sha1 ($ salt.unicode ($ pass))

Abbiamo cercato in giro e trovato alcuni strumenti interessanti per trovare il tipo di crittografia e possono essere suddivisi in due categorie, vale a dire con sorgente / binario disponibile e senza alcun codice sorgente.

La ricerca del tipo di crittografia tramite reverse engineering può essere ottenuta tramite strumenti come:

http://www.autistici.org/ratsoul/iss.html - A plugin for immunity debugger that identifies common encryption or encoding functions / structures etc.
http://aluigi.altervista.org/mytoolz.htm#signsrch - is the binary version of the immunity plugin version
http://www.hexblog.com/?p=27 - a plugin for OllyDbg to determine the type of encryption
https://www.hex-rays.com/products/ida/tech/flirt/index.shtml - a plugin for IDA Pro to determine standard called libraries, could be used to identify encryption libraries

Poi c'è lo script di supposizione "colto":

http://code.google.com/p/hash-identifier/ is a script that compares various attributes such as length, contained char types etc to produce a possible hash type used. Seems to be included in Backtrack5 standard.

E i siti web che consentono la verifica manuale come:

http://www.insidepro.com/hashes.php - Allows you to enter a password and compare the hash to your example hash
http://forum.insidepro.com/viewtopic.php?t=8225 - Lists various encrypted hashes to allow for a manual comparison

Quindi, in sostanza, sembra che senza una conoscenza preliminare dell'hash usato, senza alcuna sorgente / binario disponibile per il reverse engineering, si è fondamentalmente lasciato un serio lavoro di congettura. E per aggiungere un po 'di pressione, scegli attentamente poiché scegliere l'hash sbagliato può portare a MOLTO tempo sprecato!

    
risposta data 13.11.2015 - 14:39
fonte

Leggi altre domande sui tag