Un mot de passe est techniquement défini comme une chaîne secrète de caractères utilisés pour authentifier ou accéder aux ressources. Il doit être gardé en secret et caché à d'autres qui ne sont pas autorisés à accéder à ces ressources. Les mots de passe sont utilisés avec des ordinateurs depuis les premiers jours de calcul. L'un des premiers systèmes de partage, a été introduit en 1961. Il avait une commande de connexion qui demandait un mot de passe utilisateur. Après avoir tapé le «mot de passe», le système désactive le mécanisme d'impression, si possible, afin que l'utilisateur puisse taper son mot de passe avec confidentialité.
La force d'un mot de passe est fonction de la longueur, de la complexité et de l'imprévisibilité. Il mesure l'efficacité de la résistance à la deviner ou à la rupture. Mots de passe faibles, en revanche, raccourcissez le temps nécessaire pour deviner et accéder aux e-mails personnels / d'entreprise, des données sensibles comme les informations financières, les informations commerciales, les cartes de crédit, etc.
Il existe de nombreuses façons un mot de passe peut être faible correspondant à la puissance des forces de divers schémas d'attaque. Le plus populaire de ce type d'attaque d'identification est la force brute. Il s'agit d'une méthode d'essai et d'erreur comme deviner, de tenter de décoder les données cryptées, un tel mot de passe ou un cryptage de données utilisé par le programme d'application ou «outil de piratage».
Hydra est le cracker de connexion réseau le plus rapide qui prend en charge de nombreux protocoles d'attaque. Il est très rapide et flexible, et les nouveaux modules sont faciles à ajouter. Cet outil permet aux chercheurs et aux consultants en sécurité de montrer à quel point il serait facile d'obtenir un accès non autorisé à un système à distance. Hydra a été écrite par Van Hauser et son en plus soutenu par David Maciejak. Dans la dernière mise à jour, le développement Hydra est déplacé vers le référentiel public Github à: https: // github.com / vanhauser-thc / thc-hydra.
Hydra a été testée pour compiler sur Linux, Windows / Cygwin, Solaris 11, FreeBSD 8.1, OpenBSD, OSX, QNX / BlackBerry, et est disponible sous GPLV3 avec une extension spéciale de licence OpenSSL.
THC HYDRA prend en charge ces protocoles: Cisco AAA, Cisco Auth, Cisco Entor , Http-Proxy, ICQ, IMAP, IRC, LDAP, MS-SQL, MYSQL, NNTP, ORACLE Écouteur, Oracle SID, PC-AHEALWORE (NT), SMTP, SMTP ENUM, SNMP V1 + V2 + V3, SOCKS5, SSH (V1 et V2), SSHKE.
Comparaison de l'hydra avec d'autres outils de fissuration
Il y a aussi beaucoup d'outils de cracker de connexion à côté de Hydra, mais aucun ne prend en charge une énorme liste de protocoles et le support de cracker parallélisé comme Hydra. Les tableaux ci-dessous montrent le résultat des fonctionnalités, des services et de la comparaison de la vitesse avec MEDUSA et NCRACK.
Caractéristiques
Fonctionnalité | Hydre | Méduse | Ncrack |
---|---|---|---|
Licence | AGPLV3 | Gplv2 | Termes GPLV2 + NMAP |
Prise en charge IPv6 | Oui | Non | Non |
Interface utilisateur graphique | Oui | Oui | Non |
Support internationalisé (RFC 4013) | Oui | Non | Non |
Prise en charge du proxy HTTP | Oui | Oui | Non |
Support proxy de chaussettes | Oui | Non | Non |
Protocoles pris en charge | 51 | 22 | 7 |
Prestations de service
Page de connexion basée sur le Web Crack avec
Service | Détails | Hydre | Méduse | Ncrack | |
---|---|---|---|---|---|
ADAM-6500 | Oui | Non | Non | ||
AFP | Oui | Oui | Non | ||
Astérisque | Oui | Non | Non | ||
Mot de passe Cisco | Oui | Non | Non | ||
Cisco Activer | Oui | Non | Non | ||
CVS | Oui | Oui | Non | ||
Oiseau de feu | Oui | Non | Non | ||
FTP | Oui | Oui | Oui | ||
Support SSL | Auth TLS & FTP sur SSL | Auth TLS & FTP sur SSL | Non | ||
Http | Méthode (s) | Obtenez, dirigez-vous, postez | OBTENIR | OBTENIR | |
Auth de base | Oui | Oui | Oui | ||
Formulaire http | Méthode (s) | Obtenir, poster | Obtenir, poster | Non | |
Support SSL | Https | Https | Non | ||
Http proxy | Auth de base | Oui | Non | Non | |
Auth à digest-md5 | Oui | Non | Non | ||
Auth ntlm | Oui | Non | Non | ||
Support SSL | Https | Non | Non | ||
Énumération de l'URL proxy HTTP | Oui | Non | Non | ||
ICQ | v5 | Oui 1 | Non | Non | |
IMap | Support de connexion | Oui | Oui | Non | |
AUTH SUPPORT | Oui | Non | Non | ||
Support simple authentique | Oui | Oui | Non | ||
AUTH CRAM-MD5 Prise en charge | Oui | Non | Non | ||
Auth Cram-Sha1 Support | Oui | Non | Non | ||
Auth Cram-Sha256 Support | Oui | Non | Non | ||
Support Auth Digest-MD5 | Oui | Non | Non | ||
AUTH NTLM Prise en charge | Oui | Oui | Non | ||
Auth Scram-Sha1 Support | Oui | Non | Non | ||
Support SSL | IMAPS & STARTTLS | IMAPS & STARTTLS | Non | ||
IRC | Mot de passe du serveur général | Oui | Non | Non | |
Mot de passe du mode opératoire | Oui | Non | Non | ||
Ldap | V2, support simple | Oui | Non | Non | |
V3, support simple | Oui | Non | Non | ||
V3, support AUTH CRAM-MD5 | Oui | Non | Non | ||
Support Auth Digest-MD5 | Oui | ||||
AUTH NTLM Prise en charge | Oui | Oui | |||
Auth Scram-Sha1 Support | Oui | ||||
Support SSL | IMAPS & STARTTLS | IMAPS & STARTTLS | |||
IRC | Mot de passe du serveur général | Oui | |||
Mot de passe du mode opératoire | Oui | ||||
Ldap | V2, support simple | Oui | |||
V3, support simple | Oui | ||||
V3, support AUTH CRAM-MD5 | Oui | ||||
V3, support Auth Digest-MD5 | Oui | ||||
MS-SQL | Oui | Oui | |||
Mysql | v3.X | Oui | Oui | ||
v4.X | Oui | Oui | |||
v5.X | Oui | Oui | |||
NCP | Oui | Oui | |||
Nntp | Support utilisateur | Oui | Oui | ||
AUTH SUPPORT | Oui | ||||
Support simple authentique | Oui | ||||
AUTH CRAM-MD5 Prise en charge | Oui | ||||
Support Auth Digest-MD5 | Oui | ||||
AUTH NTLM Prise en charge | Oui | ||||
Support SSL | StartTls & nntp sur SSL | ||||
Oracle | Base de données | Oui | Oui | ||
Auditeur TNS | Oui | ||||
Énumération SID | Oui | ||||
PC-NFS | Oui | ||||
Pcanywhere | Authentification native | Oui | Oui | ||
Authentification basée sur le système d'exploitation (MS) | Oui | ||||
Pop3 | Support utilisateur | Oui | Oui | Oui | |
Support APOP | Oui | ||||
AUTH SUPPORT | Oui | Oui | |||
Support simple authentique | Oui | Oui | |||
AUTH CRAM-MD5 Prise en charge | Oui | ||||
Auth Cram-Sha1 Support | Oui | ||||
Auth Cram-Sha256 Support | Oui | ||||
Support Auth Digest-MD5 | Oui | ||||
AUTH NTLM Prise en charge | Oui | Oui | |||
Support SSL | POP3S & STARTTLS | POP3S & STARTTLS | Pop3 | ||
Postgresql | Oui | Oui | |||
Astérisque | Oui | ||||
RDP | Windows Workstation | Oui | Oui | Oui | |
Windows Server | Oui | Oui | |||
Authentification | Oui | Oui | |||
Redis | Oui | Non | |||
Rexec | Oui | Oui | |||
Rlogin | Oui | Oui | |||
Rpcap | Oui | Non | |||
RSH | Oui | Oui | |||
Rtsp | Oui | Non | |||
SAP R / 3 | Oui | ||||
Siemens S7-300 | Oui | ||||
siroter | Oui | ||||
Support SSL | Siroter SSL | ||||
PME | Mode Netbios | Oui | Oui | Non | |
Mode natif W2K | Oui | Oui | Oui | ||
Mode hachage | Oui | Oui | Non | ||
Auth texte effacer | Oui | Oui | |||
Auth LMV1 | Oui | Oui | Oui | ||
Auth LMV2 | Oui | Oui | Oui | ||
Authentique ntlmv1 | Oui | Oui | Oui | ||
Authentique ntlmv2 | Oui | Oui | Oui | ||
Smtp | AUTH SUPPORT | Oui | Oui | ||
Support simple authentique | Oui | Oui | |||
AUTH CRAM-MD5 Prise en charge | Oui | ||||
Support Auth Digest-MD5 | Oui | ||||
AUTH NTLM Prise en charge | Oui | Oui | |||
Support SSL | SMTPS & STARTTLS | SMTPS & STARTTLS | |||
Enus de l'utilisateur SMTP | VRFY CMD | Oui | Oui | ||
Expn cmd | Oui | Oui | |||
RCPT à CMD | Oui | Oui | |||
Snmp | v1 | Oui | Oui | ||
V2C | Oui | Oui | |||
v3 | (MD5 / SHA1 AUTH UNIQUEMENT) | ||||
CHAUSSETTES | v5, mot de passe | Oui | |||
Ssh | v1 | Oui | |||
v2 | Oui | Oui | Oui | ||
Clés SSH | v1, v2 | Oui | |||
Subversion (SVN) | Oui | Oui | |||
Équipe | Ts2 | Oui | |||
Telnet | Oui | Oui | Oui | ||
XMPP | AUTH SUPPORT | Oui | |||
Support simple authentique | Oui | ||||
AUTH CRAM-MD5 Prise en charge | Oui | ||||
Support Auth Digest-MD5 | Oui | ||||
Auth Scram-Sha1 Support | Oui | ||||
Vmware authaon | v1.00 / V1.dix | Oui | Oui | ||
Support SSL | Oui | Oui | |||
VNC | RFB 3.X Prise en charge du mot de passe | Oui | Oui | ||
RFB 3.x Utilisateur + Prise en charge du mot de passe | (Ultravnc uniquement) | ||||
RFB 4.X Prise en charge du mot de passe | Oui | Oui | |||
RFB 4.x Utilisateur + Prise en charge du mot de passe | (Ultravnc uniquement) |
Comparaison de vitesse
Vitesse (en s) | Hydre | Méduse | Ncrack |
---|---|---|---|
1 module Tâche / FTP | 11.93 | 12.97 | 18.01 |
4 tâches / module FTP | 4.20 | 5.24 | 9.01 |
16 tâches / module FTP | 2.44 | 2.71 | 12.01 |
1 Module Task / SSH V2 | 32.56 | 33.84 | 45.02 |
4 tâches / module SSH V2 | dix.95 | Cassé | Manqué |
16 tâches / module SSH V2 | 5.14 | Cassé | Manqué |
C'était une brève introduction simple à Hydra. Partons maintenant à l'installation.
Installation de l'hydra
Hydra est préinstallé sur Kali Linux, mais si vous avez un système d'exploitation différent, vous pouvez compiler et l'installer sur votre système. Actuellement, le support d'Hydra sur différentes plates-formes:
Pour télécharger, configurer, compiler et installer HYDRA, tapez simplement dans le terminal:
git clone https: // github.com / vanhauser-thc / thc-hydra.git
CD THC-HYDRA
./ Configurer
faire
faire l'installation
Si vous avez Ubuntu / Debian, vous aurez besoin de bibliothèques de dépendances:
APT INSTALLER LIBSSL-DEV LIBSSH-DEV LIBIDNN11-DEV LIBPCRE3-DEV LIBGTK2.0-dev libmysqlclient-dev libpq-dev libsvn-dev firebird-dev libncp-dev
Si vous ne pouviez pas trouver ces bibliothèques dans votre référentiel, vous devez les télécharger et les installer manuellement.
Comment utiliser Hydra
Félicitations, vous avez maintenant réussi à installer Hydra sur votre système. En fait, Hydra est livré avec deux saveurs, Gui-GTK et ma version CLI préférée. Et en outre Hydre a également une version guidée par CLI, son appelée «Hydra-Wizard». Vous serez guidé étape par étape au lieu de taper manuellement toutes les commandes ou arguments dans le terminal. Pour exécuter Hydra, à partir de votre type de terminal:
Pour CLI:
hydre
Pour Cli-Wizard:
hydrat-wizard
Pour GUI:
xhydra
Après avoir tapé «hydra», il affichera des commandes d'aide comme celle-ci:
root @ kali: ~ # hydra -h
Hydra V8.6 (c) 2017 par Van Hauser / THC et David Maciejak - À des fins juridiques uniquement
Syntaxe: Hydra [[-l Login | -l Fichier] [-P Pass | -p File]] | [-C fichier]] [-e nsr] [-o file] [-t tasks] [-m file [-t tasks]] [-w time] [-w time] [-f] [-s port] [-x min: max: charset] [-SUVV46] [service: // serveur [: port] [/ opt]]
Options:
-R Restaurer une session abandonnée / écrasée précédente
-S Effectuez une connexion SSL
-S PORT S Si le service se trouve sur un port par défaut différent, définissez-le ici
-L Connexion ou connexion du fichier -l avec nom de connexion, ou chargez plusieurs connexions à partir du fichier
-P Pass ou -P Fichier essayez passer le mot de passe ou chargez plusieurs mots de passe à partir du fichier
-x min: max: marge de passe du mot de passe du marquet bruteforce, tapez "-x -h" pour obtenir de l'aide
-e nsr essayez "n" mot de passe nul, "S" Connexion en tant que pass et / ou "r" Inversé Connexion
-U LOOP autour des utilisateurs, pas de mots de passe (efficace! implicite avec -x)
-C Fichier Colon séparée "Connexion: PASS" Format, au lieu d'options -l / -p
-M Liste de fichiers des serveurs à attaquer en parallèle, une entrée par ligne
-o Fichier Écriture Found Connecture / Passage Paies pour fichier au lieu de STDOUT
-F / -f sortie lorsqu'une paire de connexion / pass est trouvée (-m: -f par hôte, -f global)
-Les tâches T exécutent les tâches Nombre de connexions en parallèle (par hôte, par défaut: 16)
-W / -W Time Time pour les réponses (32S) / Entre les connexions par fil
-4 / -6 Préférer les adresses IPv4 (par défaut) ou IPv6
-V / -v / -d Verbose Mode / Afficher la connexion + passer pour chaque mode de tentative / débogage
-U Détails d'utilisation du module de service
serveur le serveur cible (utilisez cette option ou l'option -m)
Service le service à craquer (voir ci-dessous pour les protocoles pris en charge)
Opt certains modules de service prennent en charge l'entrée supplémentaire (-U pour l'aide au module)
Services pris en charge: astérisque afp cisco cisco-enable cvs firebird ftp ftps http [s] - head | get http [s] - get | post -form http-proxy http-proxy-urlenum icq imap [s] irc ldap2 [S] LDAP3 [- Cram | Digest MD5] [S] MSSQL MySQL NCP NNTP Oracle-Listener Oracle-Sid PCANYWORAH SOCKS5 SSH SSHKEY SVN TeamSpeak Telnet [S] VMUTHD VNC XMPP
Hydra est un outil pour deviner / crack Paies de connexion / mot de passe valides - Utilisation uniquement autorisée à des fins juridiques. Cet outil est sous licence sous AGPL V3.0.
La dernière version est toujours disponible sur http: // www.THC.org / thc-hydra
Ces services n'ont pas été compilés dans: SAPR3 Oracle.
Utilisez HYDRA_PROXY_HTTP ou HYDRA_PROXY - Et si nécessaire Hydra_Proxy_Auth - Environnement pour une configuration de proxy.
E.g.:% Export Hydra_proxy = socks5: // 127.0.0.1: 9150 (ou chaussettes4: // ou connecter: //)
% Exporter hydra_proxy_http = http: // proxy: 8080
% Export Hydra_Proxy_Auth = User: Pass
Exemples:
Hydra -l User -P Passlist.txt ftp: // 192.168.0.1
Hydra -l Liste d'utilisation.txt -p defaultpw imap: // 192.168.0.1 / Plain
Hydra -c par défaut.TXT -6 POP3S: // [FE80 :: 2C: 31ff: Fe12: AC11]: 143 / TLS: Digest-MD5
Hydra -l admin -p mot de passe ftp: // [192.168.0.0/24] /
Hydra -l Connects.TXT -P PWS.cibles txt -m.txt ssh
Connexion basée sur BruteForce avec HYDRA
HYDRA prend en charge un service BruteForcing comme je l'ai mentionné plus tôt, l'un d'eux est utilisé pour les connexions basées sur BruteForce telles que le formulaire de connexion des médias sociaux, le formulaire de connexion des banques d'utilisateurs, votre connexion Web sur le routeur, etc. Que «http [s] - get | post -form» qui traitera cette demande. Dans ce didacticiel, je vais vous montrer comment bruterforce vulnérables Logins Web. Avant de déclencher Hydra, nous devons connaître certains arguments nécessaires tels que ci-dessous:
Aide pour le module HTTP-POST-FORM:
Le module http-posT-forme nécessite la page et les paramètres du formulaire Web. Par défaut, ce module est configuré pour suivre un maximum de 5 redirections de suite. Il rassemble toujours un nouveau cookie à partir de la même URL sans variables. Les paramètres prennent trois valeurs séparées «:», plus les valeurs facultatives. (Remarque: si vous avez besoin d'un côlon dans la chaîne d'option comme valeur, échappez-la avec «\:», mais n'échappez pas à un «\» avec «\\».)
Syntaxe:
[url]: [Paramètres de formulaire]: [condition de condition] [:( Facultatif) [:( Facultatif)]
C'est là que la plupart des gens se trompent. Vous devez vérifier le webapp à quoi ressemble une chaîne défaillante et la mettre dans ce paramètre!
Les paramètres suivants sont facultatifs:
C = / page / uri pour définir une page différente pour rassembler les cookies initiaux de (h | h) = my-hdr \: foo pour envoyer un en-tête http défini par l'utilisateur avec chaque demande ^ l'utilisateur ^ et ^ pass ^ peuvent également être placés dans ces en-têtes!
Note: 'H' ajoutera l'en-tête défini par l'utilisateur à la fin, peu importe qu'il soit déjà envoyé par Hydra ou non. 'H' remplacera la valeur de cet en-tête s'il existe, par celui fourni par l'utilisateur, ou ajouter l'en-tête à la fin.
Notez que si vous allez mettre des Colons (:) Dans vos en-têtes, vous devez leur échapper avec une barre de barre (\). Toutes les colons qui ne sont pas des séparateurs d'options doivent être échappés (voir les exemples ci-dessus et ci-dessous). Vous pouvez spécifier un en-tête sans échapper aux Colons, mais de cette façon, vous ne pourrez pas mettre des Colons dans la valeur de l'en-tête elle-même, car ils seront interprétés par HYDRA comme des séparateurs d'options.
Obtention de paramètres de post à l'aide du navigateur, Iceweasel / Firefox
Dans votre navigateur Firefox, appuyez sur des touches 'Ctrl + shift + q'. Ensuite, ouvrez la page de connexion Web http: // testasp.vulnweb.com / connexion.aspic?Returl =% 2fdefault% 2easp% 3f, vous remarquerez qu'un texte apparaît sur l'onglet Développeur réseau. Il vous dit quels fichiers nous sont transférés. Voir la méthode Tous sont obtenus, car nous n'avons pas encore publié de données.
Pour obtenir les paramètres post-forme, tapez n'importe quel dans le nom d'utilisateur et / ou le formulaire de mot de passe. Vous remarquerez une nouvelle méthode de publication sur l'onglet Développeur réseau. Double-cliquez sur cette ligne, sur l'onglet "En-têtes", cliquez sur "Modifier et renvoyer" le bouton à droite. Sur la demande de la demande, copiez la dernière ligne, comme «Tfuname = asu & tfupass = raimu». le "Tfuname" et "Tfupass" sont des paramètres dont nous avons besoin. Comme vu ci-dessous:
Kali Linux possède des listes de mots, choisissez la liste de mots appropriée ou utilisez simplement Rockyou.txt place dans / usr / share / wordlists / Comme vu ci-dessous:
D'accord, maintenant nous avons tous les arguments dont nous avons besoin et prêts à tirer Hydra. Voici le modèle de commande:
hydra -l-P
Enfin, sur la base des informations que nous avons recueillies, nos commandes devraient ressembler à ceci:
Hydra -l admin -p / usr / share / wordlists / rockyou.TXT TESTASP.vulnweb.com Http-Post-Form "/ Connexion.aspic?Returl =% 2fdefault% 2easp% 3f: tfuname = ^ utilisateur ^ & tfupass = ^ pass ^: s = logout "-vv -f
Décomposons les commandes:
Permet maintenant d'Hydra essayer de briser le mot de passe pour nous, il a besoin de temps car il s'agit d'une attaque de dictionnaire. Une fois que vous avez réussi à trouver une paire de connexion: le mot de passe Hydra terminera immédiatement le travail et affichera les informations d'identification valides.
Il y a tellement de choses que Hydra pourrait faire, car dans ce tutoriel, nous venons d'apprendre à Bruteforce Web Logon en utilisant HYDRA, nous n'apprenons qu'un seul protocole, c'est-à-dire le protocole HTTP-Post-Form. Nous pouvons également utiliser HYDRA contre un autre protocole tel SSH, FTP, Telnet, VNC, proxy, etc.