
Un outil en ligne de commande pour détecter les mots de passe partagés
Un outil en ligne de commande pour détecter les mots de passe partagés
Liste des options :
Shard (1.5) can run in 3 modes:
1) Single user single password - Use -u and -p
2) Single user multiple passwords - Use -u and -f
3) Multiple users and multple passwords - Use -f only
For more detailed usage examples see the wiki.
Usage: java -jar shard-1.5.jar [options]
-u, --username <value> Username to test
-p, --password <value> Password to test
-f, --file <value> A path to a file containing a set of credentials or passwords
--format <value> The format of the credentials. Must be a regular expression with 2 capture groups. The first capture group for the username and the second capture group for the password. Defaults to a regex that will match:
"username":"password"
-l, --list List available modules
-v, --version Print the version
--modules <value> Only run specific modules. A comma separated list
--help Prints this usage text
Liste des modules disponibles :
$ java -jar shard.jar -l
Available modules:
Facebook
LinkedIn
Reddit
Twitter
Instagram
GitHub
BitBucket
Kijiji
DigitalOcean
Vimeo
Laposte
DailyMotion
Étant donné un nom d'utilisateur et un mot de passe, shard tentera de s'authentifier sur plusieurs sites :
$ java -jar shard.jar -u username-here -p password-here
21:16:25.950 [+] Running in single credential mode
21:16:30.302 [+] username-here:password-here - Reddit, Instagram
Pour tester plusieurs identifiants, fournissez un nom de fichier. Par défaut, cela attend une ligne par identifiant au format "username":"password". Des formats personnalisés peuvent être fournis avec l'option --format
$ java -jar shard.jar -f /tmp/creds.txt
21:16:39.501 [+] Running in multi-credential mode
21:16:39.516 [+] Parsed 2 credentials
21:16:42.794 [+] username1:password1 - Reddit, Instagram
21:16:45.189 [+] username2:password2 - Facebook, LinkedIn, Twitter
Récupérez la dernière version depuis l'onglet des versions, qui a été construite comme un fat jar avec sbt assembly.
ou
Construisez-la vous-même avec sbt, sbt assembly
Ajouter un nouveau module est simple. Créez une nouvelle classe qui hérite de AbstractModule dans le package module et ajoutez le module à ModuleFactory.
AbstractModule a une méthode abstraite :
def tryLogin(creds: Credentials): Boolean
Cette méthode prend un objet Credentials et retourne un booléen indiquant une connexion réussie. Je recommande d'utiliser TwitterModule comme modèle. Pour une explication détaillée de l'ajout d'un nouveau module, consultez l'exemple sur le wiki
Dépendances :
Si Scala n'est pas votre truc, jetez un œil aux secondary_implementations, ce sont des réécritures de shard dans d'autres langages. Si vous ajoutez un module à l'une de ces implémentations, je le réécrirai en Scala et l'ajouterai également au projet principal.
Contactez-moi, rejoignez le salon Gitter, ou utilisez ce projet GitHub
Vous aimez ce projet ? Envisagez de faire un don à 1EpSQumsD2EFKnisJXjStsUVsXpF4ge8dj