L’algoritmo MD5 – Mysql – Joomla Forgot Password

 

Da Wikipedia, l’enciclopedia libera.

L’acronimo MD5 (Message Digest algorithm 5) indica un algoritmo crittografico di hashing realizzato da Ronald Rivest nel 1991 e standardizzato con la RFC 1321.

Questo tipo di codifica prende in input una stringa di lunghezza arbitraria e ne produce in output un’altra a 128 bit che può essere usata per calcolare la firma digitale dell’input. La codifica avviene molto velocemente e l’output (noto anche come “MD5 Checksum” o “MD5 Hash“) restituito è tale per cui è altamente improbabile ottenere con due diverse stringhe in input una stessa firma digitale in output. Inoltre, come per la maggior parte degli algoritmi di hashing, non dovrebbe esserci possibilità, se non per tentativi (forza bruta), di risalire alla stringa di input partendo dalla stringa di output (la gamma di possibili valori in output è infatti pari a 2 alla 128ª potenza).

Schema di una operazione dell’MD5. L’algoritmo consta di 64 di queste operazioni, raggruppate in gruppi di 16. Nello schema, “F” è una funzione non lineare (ne viene usata una per ogni passaggio), “Mi” indica un blocco a 32 bit del messaggio, “Ki” indica una costante a 32 bit, differente per ogni operazione.

Questo algoritmo molto usato per la codifica delle password produce una “impronta” della stringa originale a cui non si può praticamente risalire.

In mysql per produrre l’md5 di una stringa si procede in questo modo:

select md5(‘miapassword’);

 

mysql> select md5('miapassword');
+----------------------------------+
| md5('miapassword')               |
+----------------------------------+
| 4c3e02877eb65b74b6a0882fa4406962 |
+----------------------------------+
1 row in set (0.00 sec)

 

Esempio 1: Ho dimenticato la password di amministazione di Joomla!!

Requisito: Sono in possesso di accesso ftp e phpmyadmin

Cosa accade se dimenticate la password di accesso al pannello di amministrazione di Joomla e non avete previsto un meccanismo di reset e/o di forgot?

Se siete l’admin probabilmente avrete anche le credenziali ftp e di conseguenza saprete sicuramente recuperare la password dell’utente mysql dal file “configuration.php”.

Accedete al vostro phpmyadmin via browser, loggatevi ed, una volta scelto il database di joomla, aprite la tabella degli utenti.
In corrispondenza dell’utente administrator cliccate sulla matita manifestando la vostra intenzione alla modifica del record.
Nel campo della password scrivete in chiaro la vostra nuova password, ma preoccupatevi di scegliere nel controllo a tendina adiacente,  che corrisponde a Function, la funzione MD5.
Salvate ed il gioco è fatto. La vostra nuova password in formato MD5 è già funzionante e potete rientrare nella vostra area di amministrazione.