Bruteforce : pas forcément pour les brutes

Bruteforce : pas forcément pour les brutes

Quand j’étais plus jeune, le bruteforce pour moi c’était ça: tu génères tous les mots possibles avec Crunch, tu prends ton laptop et tu lances ton attaque pour avoir le password de n’importe quel compte quelques minutes après.

Vraiment?

Quand j’ai commencé à m’y intéresser un peu plus sérieusement, j’ai compris que le bruteforce, ça ressemblait plus à ça: tu veux générer tous les mots possible avec Crunch, mais il faut des péta octets et comme t’as pas l’espace de stockage tu penches plus sur des password contenant que des chiffres, ou de moins de 6 caractères… ou des dictionnaires tout fait avec des passwords vraiment pas adaptés à ta cible. Bref ça commence mal. Ensuite tu lances ton attaque et tu te rends compte que c’est super lent, et qu’il faudra des semaines entières pour arriver à la fin du dictionnaire qui de toute façon n’a que très peu de chance de contenir le bon passe. Et si tu persistes, tu te fais jeter par le serveur ou l’appli qui grille directe ton petit jeu. Bref, le bruteforce c’est nul.

Oui et non, le bruteforce n’est pas l’attaque la plus technique ni la plus fine qui soit, certes, mais en faisant les choses bien, il est possile d’optimiser un peu le processus. En fait, pour moi le bruteforce c’est surtout du Social Engineering et des recherches en sources ouvertes (OSINT). Je vais donc décrire quelques petits tips que j’ai appris avec le temps, et sans être révolutionnaire cela peut éventuellement aider.

/! Attention /!

Il est strictement interdit de réaliser ce type d’attaque, quelque soit le contexte. Je ne suis donc pas responsable de vos actions. Sachez que ce billet est fait à titre pédagogique, pour que tout le monde comprenne ce qu’il peut arriver si vous étalez votre vie privée sur internet. D’ailleurs, vous remarquerez que j’explique le principe et fais référence à quelques outils pour réaliser le fait que c’est bien faisable, mais je ne vous explique pas la marche à suivre détaillée.

Les recherches

Recherches d’informations: étape cruciale

Dans un premier temps, il va falloir cibler la victime, et faire quelques recherches desssus. Cela comprend toutes les infos qui traînent sur Facebook, Twitter, Instagram etc… bref tous les réseaux sociaux. N’oubliez pas Linkedin, très important car contient souvent un CV complet de la personne. On parle évidemment de recherche en sources OUVERTES, on ne parle pas de piratage, mais comme aujourd’hui tout le monde envoie sa vie privée en publique… Si votre cible fait justement attention à ne pas publier tout et n’importe quoi, n’hésitez pas à l’ajouter sur les différents réseaux, avec votre identité… ou une autre. Cela peut aller bien au delà de basiques recherches: si vous avez possibilité de rencontrer la personne, n’hésitez pas. Au plus vous connaissez votre cible, au mieux il sera possible de réduire l’ampleur de l’attaque. Si vous avez son téléphone, je vous laisse regarder quelques épisodes de Mr. Robot pour vous donner quelques idée 😉 Donc en vrac, les informations importantes sont en gros les informations auxquelles vous pensiez (en espérant que ce ne soit plus le cas) lors de la création d’un mot de passe. Il est donc question du nom, prénom, date de naissance, enfants, animaux, passions, amis, site internet, blogs etc etc…

Les outils

Quelques softs qui aident bien

Maintenant que vous avez les infos sotckées bien au chaud, il va falloir les utiliser à bon escient. L’idée est de créer un dictionnaire adapté, et il va falloir trouver un compromis entre probabilité de générer le bon password et place / rapidité d’exécution. Plus on génère de mots, plus on accentue la probabilité de choper le bon mot de passe, mais plus il y a de combinaisons à tester donc… lent. Bref, il faut je pense commencer avec une base, genre le fameux rockyou.txt ou un dictionnaire qui contient les 100 ou les 1000 mots de passe les plus utilisés. Si c’est plus spécifique, du WPA2 par exemple, recherchez des dicos de WPA2 par défaut. Encore une fois, il faut adapter: si vous avec un delay de 2 secondes entre chaque tentative, essayez de réduire votre dico, si vous pouvez multi-threader l’attaque alors là faites vous plaisir! Ensuite, il va falloir agrémenter le tout de votre petite touche personnelle, et c’est à ce moment que vous ressortez toutes vos infos.

  1. Vous pouvez, à l’aide de Cewl, générer un dico qui prend comme source une page ou un site internet. Très efficace si vous avez un blog personnel sous la main.
  2. Vous pouvez générer un deuxième dico (le troisième avec votre base donc), en s’aidant de Cupp (ou Common User Password Profiler). Ce script va vous demander tout plein de questions auxquelles vous essaierez de répondre avec les éléments trouvés précédemment. Vous pouvez aussi rajouter tout un tas de mots, et Cupp s’occupera de générer ce qu’il faut avec ce que vous lui avez donné, magique non?
  3. Il va maintenant falloir fusionner les 3 dicos (la base, celui de Cewl et celui de Cupp). Chacun ses petites techniques: concaténation, mélange aléatoire, une ligne sur deux etc…
  4. N’hésitez pas à écrire quelques scripts ou utiliser des outils en ligne pour mélanger et aggrandir votre dictionnaire, tout en gardant à l’esprit la réflexion probable de votre cible (plutôt des mots courts et compliqués, longs et simples …).

 

L’attaque

A l’attaque!

Il est maintenant l’heure de lancer votre attaque, et de vous armer de patience. Evidemment, il faut avant tout cibler quelle appli va être bruteforcée. Savoir si c’est une appli web, un service comme SSH, du FTP etc… Essayez d’abord à la main, non pas dans l’espoir de trouver rapidement, mais plutôt de relever les timeout, les éventuelles sécurités appliquées, la possibilité de multi-threader etc… Ensuite, choisissez votre logiciel préféré et… c’est parti!

Je vous rappelle tout de même qu’il est interdit de réaliser ce genre de choses sur des personnes qui ne seraient pas au courant ou dans un contexte hors contrat type audit.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.