Affichage des articles dont le libellé est password. Afficher tous les articles
Affichage des articles dont le libellé est password. Afficher tous les articles

vendredi 23 janvier 2015

Nouveaux jouets : 2 GPU

Comme évoqué dans l'article précédent sur PRINCE, je me suis fait un petit plaisir : J'ai acheté 2 cartes graphiques durant les vacances pour casser du hash !

En tant que "non joueur" (il ne faudrait pas que mes anciens amis me lisent :D ), je n'avais rien de potable comme GPU pour casser des hashs et comme les cartes graphiques ne vont pas servir à jouer, autant ne pas trop investir.

Pour faire mon choix je suis parti du benchmark suivant : http://golubev.com/gpuest.htm
Cette liste se colle "plutôt" bien dans un tableur et après un tri sur SHA1, il ne me restait plus qu'à chercher les prix d'occaz sur leboncoin et ebay. J'ai fini par faire 2 belles enchères à 74 et 79,41€ sur 2 Sapphire Radeon HD 7950 boost 3Go.

J'ai mis un peu de temps pour faire mes tests car avec une carte je tournais à 60%, mais avec les 2 oclHashcat se stoppait à 80° et les ventilos faisaient penser à un avion au décollage (mais qui ne décollerait pas).

J'ai finalement trouvé de nouveaux ventirads sur leboncoin. Des arctic accelero Xtreme 7970, les 2 pour 30€.


A gauche le ventirad original et à droite le nouveau. La CG a déjà pour réputation d'être longue, mais avec le nouveau ventirad... qui par ailleurs prend 3 slots PCI au lieu de 2... C'est un vrai poids lourd. J'ai eu la chance d'avoir une carte mère avec les ports PCI-express espacés de 3 slots et une tour ANTEC P180 que j'ai pu aménager en virant le support pour lecteur disquette :)


Et voilà une tour bien remplie et qui reste "silencieuse" avec les 2 GPU à 100%. A plein régime j'ai une carte à 62° et l'autre à 72° et ça casse des milliards de hash NTLM par seconde.

oclHashcat v1.31 starting in benchmark-mode...

Device #1: Tahiti, 2954MB, 925Mhz, 28MCU
Device #2: Tahiti, 3035MB, 925Mhz, 28MCU

Hashtype: MD5
Workload: 1024 loops, 256 accel

Speed.GPU.#1.:  6600.4 MH/s
Speed.GPU.#2.:  6604.5 MH/s
Speed.GPU.#*.: 13205.0 MH/s

Hashtype: SHA1
Workload: 1024 loops, 256 accel

Speed.GPU.#1.:  2204.2 MH/s
Speed.GPU.#2.:  2207.7 MH/s
Speed.GPU.#*.:  4411.9 MH/s

Hashtype: SHA256
Workload: 512 loops, 256 accel

Speed.GPU.#1.:   878.0 MH/s
Speed.GPU.#2.:   864.5 MH/s
Speed.GPU.#*.:  1742.5 MH/s

Hashtype: LM
Workload: 128 loops, 256 accel

Speed.GPU.#1.:  1049.3 MH/s
Speed.GPU.#2.:  1049.5 MH/s
Speed.GPU.#*.:  2098.8 MH/s

Hashtype: NTLM
Workload: 1024 loops, 256 accel

Speed.GPU.#1.: 12983.1 MH/s
Speed.GPU.#2.: 12973.9 MH/s
Speed.GPU.#*.: 25957.0 MH/s

Ce n'est finalement pas si mal pour une upgrade à 183,41€.

mardi 30 décembre 2014

Premier test de PRINCE avec oclhashcat sous Windows

Atom (le dev de hashcat) vient de sortir un algorithme appelé PRINCE qui génère des mots de passe dérivés d'un dictionnaire. Ça semble assez puissant et comme je viens de me faire plaisir avec une nouvelle carte graphique (j'en reparlerai un autre jour), j'ai envie de m'amuser en cassant un peu de mots de passe :)

Sur la base du tutoriel d'Atom, j'ai testé la ligne de commande suivante sous Windows :

C:\Users\xxx\oclHashcat-1.31>pp64.exe < rockyou.txt |
oclHashcat64.exe -m 1000 -o NTLM_prince.txt "c:\Users\xxx\hash_ntlm.txt"

En fait dans son tutoriel, Atom utilise mkfifo, mais sous Windows, il n'y a pas d'équivalent potable (en 2 minutes de recherche Google). Heureusement qu'il est possible de piper avec oclhashcat.

Ce que j'aime bien avec ces algorithmes, c'est que des mots de passe de 13 caractères ou plus peuvent tomber facilement s'ils sont bêtement dérivés d'un mot d'un dictionnaire.

En 24h j'ai cassé presque autant de mots de passe qu'en bruteforce pur durant 4 jours, mais ce ne sont pas les mêmes mots de passe qui tombent. J'ai constaté que les CPU et GPU sont largement sous-utilisés.

Session.Name...: oclHashcat
Status.........: Running
Input.Mode.....: Pipe
Hash.Target....: File (c:\Users\xxx\hash_ntlm.txt)
Hash.Type......: NTLM
Time.Started...: Mon Dec 29 23:59:01 2014 (1 day, 0 hours)
Speed.GPU.#1...:  2386.7 kH/s
Recovered......: 396/1513 (26.17%) Digests, 0/1 (0.00%) Salts
Progress.......: 233595600896
Skipped........: 0
Rejected.......: 0
HWMon.GPU.#1...: 57% Util, 51c Temp, 34% Fan

Je pense qu'il est possible de faire un PRINCE avec hashcat en même temps qu'un bruteforce en GPU avec oclhashcat. Les deux méthodes sont complémentaires. Peut-être qu'il peut être intéressant de lancer plusieurs PRINCE/hashcat avec des dictionnaires différents pour mieux utiliser le CPU. Ce n'est que le début, mais c'est déjà prometteur.

lundi 8 avril 2013

Concours de la plus grosse... wordlist !

Pour tout vous dire je fais actuellement des expérimentations en matière de cassage de mots de passe. Alors après la théorie, la pratique !

Comme je l'indiquais en conclusion de mon article sur les rainbow tables, ce qui compte maintenant c'est un dictionnaire de vrais mots de passe représentatifs qui permet avec une liste limitée de mots de tester un échantillon de mots de passe possibles bien plus pertinant que d'enchaîner a, b, c, aa, ab, ac...

Historiquement j'avais récupéré le dico de John The Ripper, le dictionnaire de la langue française et d'autres langues. Puis j'ai commencé à récupérer des listes d'acteurs célèbres... Enfin un gros tas de listes assez limitées. Puis est arrivée la mode des leaks (par exemple ) et un jour la liste RockYou est tombée et a changé le monde.

Finalement on a découvert que sans politique de mot de passe 30% des gens choisissent un mot de passe de 1 à 6 caractères (voir pipal)... Pas la peine de tester "JenniferAniston"...

Les gens ont alors commencé à rassembler des bases de mots de passe leakés et à jouer à qui aura la plus grande !

Voici quelques listes et leur taille compressée (et décompressée) :
La dernière est sortie le 2 avril dernier (vue sur LinkedIn). J'ai cru à une blague en retard, mais il semble que non... Je n'ai pas encore eu le temps de la tester, mais j'ai peur qu'elle ne fasse pas beaucoup mieux que Crackstation avec des règles de dérivation hashcat qui généreraient une liste 1 000 ou 10 000 fois plus grosse.