
hydra
H Y D R A
(c) 2001-2023 di van Hauser / THC
<[email protected]> https://github.com/vanhauser-thc/thc-hydra
Molti moduli sono stati scritti da David (dot) Maciejak @ gmail (dot) com
Codice BFG di Jan Dlabal <[email protected]>
Concesso in licenza AGPLv3 (vedi file LICENSE)
Si prega di non utilizzare in organizzazioni militari o di servizi segreti,
o per scopi illegali.
(Questo è il desiderio dell'autore e non vincolante. Molte persone che lavorano
in queste organizzazioni non si curano comunque di leggi ed etica.
Non sei tra i "buoni" se ignori questo.)
NOTA: No, non è inteso come un documento markdown! vecchia scuola!
Hydra nello stato più recente di GitHub può essere scaricato direttamente tramite Docker:``` docker pull vanhauser/hydra
INTRODUZIONE
------------
Uno dei più grandi buchi di sicurezza sono le password, come dimostra ogni
studio sulla sicurezza delle password.
Questo strumento è un codice proof-of-concept per dare a ricercatori e
consulenti di sicurezza la possibilità di mostrare quanto sia facile ottenere
accesso non autorizzato a un sistema da remoto.
QUESTO STRUMENTO È SOLO PER SCOPI LEGALI!
Esistono già diversi strumenti di hacking per il login; tuttavia, nessuno di essi
supporta più di un protocollo da attaccare o connessioni parallelizzate.
È stato testato per compilare senza problemi su Linux, Windows/Cygwin, Solaris,
FreeBSD/OpenBSD, QNX (Blackberry 10) e MacOS.
Attualmente, questo strumento supporta i seguenti protocolli:
Asterisk, AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP,
HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-POST, HTTP-PROXY,
HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, HTTPS-POST,
HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MEMCACHED, MONGODB, MS-SQL, MYSQL, NCP, NNTP, Oracle Listener,
Oracle SID, Oracle, PC-Anywhere, PCNFS, POP3, POSTGRES, Radmin, RDP, Rexec, Rlogin,
Rsh, RTSP, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP v1+v2+v3, SOCKS5,
SSH (v1 e v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth,
VNC e XMPP.
Tuttavia, il motore dei moduli per nuovi servizi è molto semplice, quindi non ci vorrà
molto tempo prima che ancora più servizi siano supportati.
Il tuo aiuto nello scrivere, migliorare o correggere i moduli è molto apprezzato!! :-)
DOVE SCARICARE
------------
Puoi sempre trovare l'ultima versione stabile/produzione di Hydra alla sua
pagina del progetto su https://github.com/vanhauser-thc/thc-hydra/releases
Se sei interessato allo stato di sviluppo corrente, il repository pubblico di sviluppo
è su GitHub:
svn co https://github.com/vanhauser-thc/thc-hydra
o
git clone https://github.com/vanhauser-thc/thc-hydra
Usa la versione di sviluppo a tuo rischio. Contiene nuove funzionalità e
nuovi bug. Le cose potrebbero non funzionare!
In alternativa (e più facilmente), puoi estrarlo come contenitore Docker:```
docker pull vanhauser/hydra
Per configurare, compilare e installare Hydra, basta digitare:``` ./configure make make install
Se desideri il modulo SSH, devi configurare libssh (non libssh2!) sul tuo sistema, scaricalo da https://www.libssh.org, per il supporto ssh v1 devi anche aggiungere l'opzione "-DWITH_SSH1=On" nella riga di comando di cmake. IMPORTANTE: Se compili su macOS, devi fare questo - non installare libssh tramite Homebrew.
Se usi Ubuntu/Debian, questo installerà le librerie supplementari necessarie per alcuni moduli opzionali (nota che alcuni potrebbero non essere disponibili sulla tua distribuzione):```
apt-get install libssl-dev libssh-dev libidn11-dev libpcre3-dev \
libgtk-3-dev libmysqlclient-dev libpq-dev libsvn-dev \
firebird-dev libmemcached-dev libgpg-error-dev \
libgcrypt11-dev libgcrypt20-dev freetds-dev
Ciò abilita tutti i moduli e le funzionalità opzionali tranne Oracle, SAP R/3, NCP e il protocollo di filing Apple, che dovrai scaricare e installare dai siti web dei fornitori.
Per tutte le altre distribuzioni Linux e sistemi basati su BSD, utilizza l'installer software di sistema e cerca librerie con nomi simili, come nel comando sopra. In tutti gli altri casi, devi scaricare tutte le librerie sorgente e compilarle manualmente.
Se scrivi semplicemente hydra, vedrai un breve riepilogo delle importanti
opzioni disponibili.
Digita ./hydra -h per vedere tutte le opzioni da riga di comando disponibili.
Nota che NON è incluso alcun file di login/password. Generali tu stesso. È comunque presente un elenco di password predefinito; usa "dpl4hydra.sh" per generare un elenco.
Per gli utenti Linux, è disponibile un'interfaccia grafica GTK; prova ./xhydra
Per l'uso da riga di comando, la sintassi è la seguente: Per attaccare un singolo target o una rete, puoi usare il nuovo stile "://": hydra [alcune opzioni da riga di comando] PROTOCOLLO://TARGET:PORTA/OPZIONI-MODULO La vecchia modalità può essere usata anche per questi, e inoltre, se vuoi specificare i tuoi target da un file di testo, devi usare questa:``` hydra [some command line options] [-s PORT] TARGET PROTOCOL [MODULE-OPTIONS]
Tramite le opzioni da riga di comando, specifichi quali login provare, quali password,
se utilizzare SSL, quante attività parallele utilizzare per l'attacco, ecc.
PROTOCOL è il protocollo che intendi usare per l'attacco, ad esempio ftp, SMTP,
http-get o molti altri disponibili
TARGET è il target che intendi attaccare
MODULE-OPTIONS sono valori opzionali specifici per ogni modulo PROTOCOL
PRIMO - seleziona il tuo target
Hai tre opzioni su come specificare il target da attaccare:
1. Un singolo target dalla riga di comando: basta inserire l'indirizzo IP o DNS
2. Un intervallo di rete dalla riga di comando: specifica CIDR come "192.168.0.0/24"
3. Un elenco di host in un file di testo: una riga per ogni voce (vedi sotto)
SECONDO - seleziona il tuo protocollo
Cerca di evitare telnet, poiché è inaffidabile per rilevare un tentativo di login corretto o errato.
Usa uno scanner di porte per vedere quali protocolli sono abilitati sul target.
TERZO - verifica se il modulo ha parametri opzionali
hydra -U PROTOCOL
es. hydra -U smtp
QUARTO - la porta di destinazione
Questo è opzionale; se non viene fornita alcuna porta, viene utilizzata la porta comune predefinita per il
PROTOCOL.
Se specifichi di usare SSL (opzione "-S"), per impostazione predefinita viene utilizzata la porta comune SSL.
Se usi la notazione "://", devi usare parentesi "[" "]" se vuoi fornire
indirizzi IPv6 o notazioni CIDR ("192.168.0.0/24") da attaccare:
hydra [alcune opzioni da riga di comando] ftp://[192.168.0.0/24]/
hydra [alcune opzioni da riga di comando] -6 smtps://[2001:db8::1]/NTLM
Nota che tutto ciò che fa Hydra è solo IPv4!
Se vuoi attaccare indirizzi IPv6, devi aggiungere l'opzione "-6" dalla riga di comando.
Tutti gli attacchi sono quindi solo IPv6!