samedi 6 août 2011

Générer des mots de passe intelligents avec Cupp!

En jouant avec ma “Backtrack 5” j’ai découvert le générateur de mots de passe dont je rêvais.

Pourquoi générer des mots de passe, me direz-vous ? Eh bien pour faire une attaque “brute force” bien sûr. Mais vous allez alors me dire qu’il existe “pléthore” de générateurs de ce type. Oui! Mais Cupp est différent.

Cupp intervient dans le cadre d’une attaque de type SE (Social Engineering”). Imaginons que vous faites l’audit de la sécurité d’une entreprise et que vous souhaitez vérifier la politique de gestion des mots de passe. Vous pouvez alors commencer par récupérer toutes les informations laissées par les employés de l’entreprise sur leurs réseaux sociaux préférés, puis identifier vos cibles (les plus bavards et les moins prudents). Vous allez ensuite donner ces informations à Cupp qui en retour vous génèrera la liste des mots de passe les plus probables pour vos cibles. Et vous êtes alors sur la voie de la réussite de votre démonstration!

Regardons de plus prêt ce fameux Cupp!

Cupp requière les informations suivantes sur votre cible, sa femme, leur enfant et leur animal domestique préféré:

  • nom
  • prénom
  • surnom
  • date de naissance
  • des mots clefs

Sur cette base, Cupp génère des mots de passe, en concaténant ces informations, en ajoutant des nombres, des caractères spéciaux et en inversant les lettres.

Mais la fonctionnalité dont je rêvais est la suivante, le remplacement de certains caractères par des chiffres comme par exemple la lettre “o” par le chiffre “0”.

Pour être plus précis j’aurais souhaité pouvoir remplacer certaines lettres par des caractères spéciaux comme par exemple la lettre “a'” par “@”. Avec un peu de configuration, Cupp le permet également.

Dans ce qui suit nous allons décrire les quelques opérations qui permettent la génération de ce type de mots de passe.

Il est simplement nécessaire de modifier le fichier de configuration “cupp.cfg”. Dans la section “Leet”, on remplace les voyelles par les caractères de notre choix:

[leet]
a=@
i=!
e=e
t=t
o=0
s=s
g=g
z=z

Et on modifie la longueur maximale du mot de passe:

wcto=15

Puis lançons la commande (on remarque au passage que Cupp est écrit en Python):

>./cupp.py –i

Et nous saisissons nos données comme dans l’exemple ci-dessous:

2011-06-18_2022

Note: il est nécessaire de répondre “Yes” à la question concernant le mode “Leet” (c’est ce mode qui permet le remplacement de certaines lettres en fonction de notre configuration). Et nous obtenons la liste de mots de passe souhaités:

2011-06-18_2104

Merci Cupp!

2 commentaires:

Partager avec...