Pagina di accesso basata sul web crack con Hydra in Kali Linux

Pagina di accesso basata sul web crack con Hydra in Kali Linux

Una password è tecnicamente definita come stringa segreta di caratteri utilizzati per autenticare o ottenere l'accesso alle risorse. Deve essere tenuto in segreto e nascosto da altri a cui non è permesso accedere a tali risorse. Le password sono state utilizzate con i computer sin dai primi giorni di calcolo. Uno dei sistemi di condivisione della prima volta, è stato introdotto nel 1961. Aveva un comando di accesso che richiedeva una password utente. Dopo aver digitato "password", il sistema disattiva il meccanismo di stampa, se possibile, in modo che l'utente possa digitare la sua password con privacy.

La forza di una password è una funzione di lunghezza, complessità e imprevedibilità. Misura l'efficacia nella resistenza all'ipotesi o alla rottura. Le password deboli, d'altra parte abbreviano il tempo necessario per indovinare e ottenere l'accesso alle e-mail personali/aziendali, dati sensibili come informazioni finanziarie, informazioni commerciali, carte di credito, ecc.

Esistono molti modi in cui una password può essere debole corrispondente al potere dei punti di forza di vari schemi di attacco. Il più popolare di questo tipo di attacco credenziale è, forza bruta. È un metodo di prova ed errore come indovinare, tentare di decodificare dati crittografati come password o crittografia dei dati utilizzati dal programma applicativo o dallo "strumento di hacking".

Hydra è il cracker di accesso di rete più veloce che supporta numerosi protocolli di attacco. È molto veloce e flessibile e nuovi moduli sono facili da aggiungere. Questo strumento consente ai ricercatori e ai consulenti di sicurezza di mostrare quanto sarebbe facile ottenere l'accesso non autorizzato a un sistema in remoto. Hydra è stato scritto da Van Hauser ed è inoltre supportato da David Maciejak. Nell'ultimo aggiornamento Hydra Development viene spostato nel repository GitHub pubblico su: https: // github.com/vanhauser-thc/thc-hydra.

Hydra è stato testato per compilare su Linux, Windows/Cygwin, Solaris 11, FreeBSD 8.1, OpenBSD, OSX, QNX/BlackBerry ed è reso disponibile in GPLV3 con una speciale espansione della licenza OpenSSL.

THC Hydra supporta questi protocolli: Cisco AAA, Cisco Auth, Cisco Abilita, CVS, FTP, HTTP (S)-forma-get, http (s) -form-post, http (s) -get, http (s) -head , HTTP-PROXY, ICQ, IMAP, IRC, LDAP, MS-SQL, Mysql, NNTP, Listener Oracle, Oracle Sid, PC-Anywhere, PC-NFS, POP3, PostgreSQL, RDP, Rexec, Rlogin, RSH, SIP, SMB (NT), SMTP, SMTP ENUM, SNMP V1+V2+V3, SOCKS5, SSH (V1 e V2), SSHKEY, Subversion, TeamSpeak (TS2), Telnet, VMware-Auth, VNC e XMPP.

Confrontare Hydra con altri strumenti di cracking

Ci sono anche molti strumenti di cracker di accesso accanto a Hydra, tuttavia nessuno supporta un enorme elenco di protocolli e supporto cracker di accesso paralleli come Hydra. Le tabelle di seguito mostrano il risultato di funzionalità, servizi e confronto di velocità contro Medusa e NCrack.

Caratteristiche

Caratteristica Idra Medusa Ncrack
Licenza Agplv3 GPLV2 Termini GPLV2 + NMAP
Supporto IPv6 NO NO
Interfaccia utente grafica NO
Supporto internazionalizzato (RFC 4013) NO NO
Supporto proxy HTTP NO
Supporto per proxy calzini NO NO
Protocolli supportati 51 22 7

Servizi

Crack Pagina di accesso basata sul Web con

Servizio Dettagli Idra Medusa Ncrack
Adam-6500 NO NO
AFP NO
Asterisco NO NO
Password Cisco NO NO
Cisco Abilita NO NO
CVS NO
Firebird NO NO
Ftp
Supporto SSL AUTH TLS e FTP su SSL AUTH TLS e FTP su SSL NO
Http Metodo (i) Ottieni, testa, post OTTENERE OTTENERE
AUTH BASIC
Forma http Metodo (i) Ottieni, post Ottieni, post NO
Supporto SSL Https Https NO
Proxy http AUTH BASIC NO NO
Digest-MD5 Auth NO NO
NTLM AUTH NO NO
Supporto SSL Https NO NO
Enumerazione dell'url proxy http NO NO
ICQ V5
1
NO NO
IMAP Supporto di accesso NO
Supporto di accesso dell'autenticazione NO NO
AUTH SUPPORTO COMPLETO NO
Supporto AUTH CRAM-MD5 NO NO
Supporto Auth Cram-Sha1 NO NO
Supporto Auth Cram-Sha256 NO NO
Supporto Digest-MD5 AUTH NO NO
Supporto NTLM AUTH NO
Supporto AUTH Scram-sha1 NO NO
Supporto SSL IMaps & StartTls IMaps & StartTls NO
IRC Password del server generale NO NO
Password in modalità opera NO NO
Ldap v2, supporto semplice NO NO
v3, supporto semplice NO NO
V3, supporto Auth Cram-Md5 NO NO
Supporto Digest-MD5 AUTH
Supporto NTLM AUTH
Supporto AUTH Scram-sha1
Supporto SSL IMaps & StartTls IMaps & StartTls
IRC Password del server generale
Password in modalità opera
Ldap v2, supporto semplice
v3, supporto semplice
V3, supporto Auth Cram-Md5
V3, supporto Digest-MD5
MS-SQL
Mysql v3.X
v4.X
V5.X
NCP
Nntp Supporto utente
Supporto di accesso dell'autenticazione
AUTH SUPPORTO COMPLETO
Supporto AUTH CRAM-MD5
Supporto Digest-MD5 AUTH
Supporto NTLM AUTH
Supporto SSL Starttls e nntp su ssl
Oracolo Banca dati
TNS Listener
Sid enumeration
PC-NFS
Pcanywhere Autenticazione nativa
Autenticazione basata sul sistema operativo (MS)
Pop3 Supporto utente
Supporto APOP
Supporto di accesso dell'autenticazione
AUTH SUPPORTO COMPLETO
Supporto AUTH CRAM-MD5
Supporto Auth Cram-Sha1
Supporto Auth Cram-Sha256
Supporto Digest-MD5 AUTH
Supporto NTLM AUTH
Supporto SSL Pop3s & starttls Pop3s & starttls Pop3s
Postgresql
Asterisco
RDP Windows Workstation
Windows Server
Dominio Auth
Redis NO
Rexec
Rlogin
Rpcap NO
RSH
Rtsp NO
SAP R/3
Siemens S7-300
SORSO
Supporto SSL Sorseggiare SSL
SMB Modalità netbios NO
Modalità nativa W2K
Modalità hash NO
Clear Text Auth
AUTH LMV1
AUTH LMV2
NTLMV1 AUTH
NTLMV2 AUTH
Smtp Supporto di accesso dell'autenticazione
AUTH SUPPORTO COMPLETO
Supporto AUTH CRAM-MD5
Supporto Digest-MD5 AUTH
Supporto NTLM AUTH
Supporto SSL SMTPS & StartTls SMTPS & StartTls
Utente SMTP enum Vrfy cmd
Expn cmd
RCPT a CMD
Snmp v1
V2C
v3 (Solo MD5/SHA1 AUTH)
CALZINI v5, password autentica
Ssh v1
v2
Tasti ssh v1, v2
Subversion (SVN)
Teamspeak TS2
Telnet
XMPP Supporto di accesso dell'autenticazione
AUTH SUPPORTO COMPLETO
Supporto AUTH CRAM-MD5
Supporto Digest-MD5 AUTH
Supporto AUTH Scram-sha1
VMware Auth Daemon v1.00 / V1.10
Supporto SSL
Vnc RFB 3.X Supporto password
RFB 3.X Utente+Supporto password (Solo ultravnc)
RFB 4.X Supporto password
RFB 4.X Utente+Supporto password (Solo ultravnc)

Confronto della velocità

Velocità (in s) Idra Medusa Ncrack
1 Modulo Task / FTP 11.93 12.97 18.01
4 attività / modulo FTP 4.20 5.24 9.01
16 attività / modulo FTP 2.44 2.71 12.01
1 Modulo Task / SSH V2 32.56 33.84 45.02
4 attività / modulo V2 SSH 10.95 Rotto perse
16 attività / modulo V2 SSH 5.14 Rotto perse

Questa è stata una breve semplice introduzione a Hydra. Ora passiamo all'installazione.

Installazione di Hydra

Hydra è preinstallata su Kali Linux, tuttavia se si dispone di un sistema operativo diverso è possibile compilare e installarlo sul sistema. Attualmente, il supporto di Hydra su piattaforme diverse:

  • Tutte le piattaforme UNIX (Linux, *BSD, Solaris, ecc.)
  • MacOS (fondamentalmente un clone BSD)
  • Windows con Cygwin (sia IPv4 che IPv6)
  • Sistemi mobili basati su Linux, MacOS o QNX (E.G. Android, iPhone, Blackberry 10, Zaurus, iPaq)

Per scaricare, configurare, compilare e installare Hydra, basta digitare nel terminale:

Git clone https: // github.com/vanhauser-thc/thc-hydra.idiota
CD thc-hydra
./configura
Fare
Installa l'installazione

Se hai Ubuntu/Debian avrai bisogno di alcune librerie di dipendenza:

APT Installa LibSSL-DEV Libssh-Dev Libidn11-Dev libpcre3-dev libgtk2.0-dev libmysqlclient-dev libpq-dev libsvn-dev firebird-dev libncp-dev

Se non sei riuscito a trovare quelle librerie nel tuo repository, allora devi scaricarle e installarle manualmente.

Come usare Hydra

Congratulazioni, ora sei riuscito a installare Hydra per il tuo sistema. In realtà, Hydra viene fornito con due gusti, Gui-GTK e la mia versione CLI preferita. E inoltre Hydra ha anche una versione guidata dalla CLI, si chiama "Hydra-Wizard". Sarai guidato passo dopo passo invece di digitare manualmente tutti i comandi o gli argomenti nel terminale. Per eseguire Hydra, dal tuo tipo di terminale:

Per CLI:

idra

Per Cli-Wizard:

Hydra-Wizard

Per GUI:

xhydra

Dopo aver digitato "Hydra", visualizzerà i comandi di aiuto come questo:

root@kali: ~# hydra -h
Hydra V8.6 (c) 2017 di Van Hauser/THC e David Maciejak - Solo per scopi legali
Sintassi: Hydra [[[-l Login | -l File] [-p Pass | -p File]] | [-C file]] [-e nsr] [-o file] [-t compiti] [-m file [-t attività]] [-w time] [-w time] [-f] [-s port] [-x min: max: chatset] [-suvv46] [servizio: // server [: porta] [/opt]]
Opzioni:
-R ripristinare una precedente sessione abortita/schiantata
-S Eseguire una connessione SSL
-s porta se il servizio si trova su una porta predefinita diversa, definiscilo qui
-l Accedi o -l Accedi del file con nome di accesso o carichi diversi accessi dal file
-p pass o -p file prova password pass o carichi più password dal file
-x min: max: charset password bruteforce generazione, tipo "-x -h" per ottenere aiuto
-e nsr provare "n" null password ", l login come pass e/o" r "Accesso invertito
-u loop attorno agli utenti, non password (efficaci! implicito con -x)
-C File Colon Separato "Accedi: Pass" Formato, anziché -l/-p Opzioni
-M Elenco file di server da attaccare in parallelo, una voce per riga
-o Scrivi file trovate coppie di accesso/password su file anziché stdout
-F / -F Esci quando viene trovata una coppia di accesso / pass (-m: -f per host, -f globale)
-T Attività eseguono attività Numero di connessioni in parallelo (per host, impostazione predefinita: 16)
-w / -w time waittime per le risposte (32s) / tra le connessioni per thread
-4 / -6 Preferisci IPv4 (predefinito) o IPv6 indirizzi
-V / -V / -D Modalità Verbosa / Show Accedi+Passa per ogni modalità Tentative / Debug
-Dettagli di utilizzo del modulo di servizio u
server il server di destinazione (usa questa o l'opzione -m)
Servizio il servizio per crack (vedi sotto per i protocolli supportati)
Opt Alcuni moduli di servizio supportano input aggiuntivi (-u per la guida del modulo)
Servizi supportati: asterisk 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 pcanywhere pcnfs pop3 [s] postgres rdp rexec rlogin rsh s7-300 sorse SOCKS5 SSH SSHKE SVN Teamspeak Telnet [S] VMAUTHD VNC XMPP
Hydra è uno strumento per indovinare/crack coppie di accesso/password valide - Utilizzo consentito solo a fini legali. Questo strumento è autorizzato da AGPL V3.0.
La versione più recente è sempre disponibile su http: // www.thc.org/thc-hydra
Questi servizi non sono stati compilati in: SAPR3 Oracle.
Utilizzare Hydra_Proxy_Http o Hydra_Proxy - e se necessario Hydra_Proxy_Auth - Ambiente per una configurazione di proxy.
E.G.: % Export Hydra_Proxy = Socks5: // 127.0.0.1: 9150 (o Socks4: // o Connect: //)
% Export Hydra_Proxy_Http = http: // Proxy: 8080
% Export Hydra_Proxy_Auth = Utente: Pass
Esempi:
Hydra -L Utente -P Passlist.txt ftp: // 192.168.0.1
Hydra -L UserList.txt -p defaultpw iMap: // 192.168.0.1/semplice
impostazioni predefinite di Hydra -c.txt -6 pop3s: // [Fe80 :: 2c: 31ff: Fe12: AC11]: 143/TLS: Digest -MD5
idra -l admin -p password ftp: // [192.168.0.0/24]/
Accessi di Hydra -l.txt -p PWS.TXT -m Target.txt ssh

Accesso basato sul Web Bruteforce con Hydra

Hydra supporta alcuni servizi di broute come ho detto in precedenza, uno di questi viene utilizzato per bluteforce login basati sul web come, modulo di accesso ai social media, modulo di accesso bancario utente, accesso basato sul web router, ecc. Che "http [s]-get | post -form" che gestirà questa richiesta. In questo tutorial ti mostrerò come bluteforce Vulnerable Web Logins. Prima di accendere Hydra dovremmo conoscere alcuni argomenti necessari come di seguito:

  • Bersaglio : http: // testasp.Vulnweb.com/login.asp?Returl =%2fdefault%2easp%3f
  • Nome utente di accesso : Admin (se non sei sicuro, Bruteforce questo)
  • Elenco password : “La posizione dell'elenco dei file di dizionario contenente possibili password."
  • Parametri del modulo : “Per il generale, utilizzare i dati di manomissione o il proxy per ottenere la forma di parametri di richiesta. Ma qui sto usando Iceweasel, basato su Firefox, barra degli sviluppatori di rete."
  • Modulo di servizio : http-post-form

Aiuto per il modulo HTTP-Post-Form:

Il modulo HTTP-Post-Form richiede la pagina e i parametri per il modulo Web. Per impostazione predefinita questo modulo è configurato per seguire un massimo di 5 reindirizzamenti in una riga. Raccoglie sempre un nuovo cookie dallo stesso URL senza variabili I parametri prendono tre valori separati ":", più valori opzionali. (Nota: se hai bisogno di un colon nella stringa di opzione come valore, sfuggirlo con "\:", ma non sfuggire a un "\" con ""\\"".)

Sintassi:

[URL]: [Parametri del modulo]: [String di condizione] [:( Opzionale) [:( Opzionale)]
  • La prima è la pagina sul server per ottenere o pubblicare a (URL).
  • Il secondo è le variabili Post/Ottieni (prelevate dal browser, proxy, ecc. con nomi utente e password sostituite nei segnaposto “^utente^e“^pass^”(parametri del modulo).
  • Terzo è la stringa che verifica per un controllo di accesso non valido di accesso * di login * (per impostazione predefinita) può essere preceduto da ""f ="", il controllo di accesso alla condizione riuscita deve essere preceduto da ""s ="".

Qui è dove la maggior parte delle persone sbaglia. Devi controllare il webapp come appare una stringa non riuscita e inserirla in questo parametro!

I seguenti parametri sono opzionali:

C =/pagina/uri per definire una pagina diversa per raccogliere cookie iniziali da (h | h) = my-hdr \: foo per inviare un intestazione HTTP definito dall'utente con ogni richiesta ^ utente ^ e ^ pass ^ può anche essere inserito in queste intestazioni!

Nota: 'H' aggiungerà l'intestazione definita dall'utente alla fine, indipendentemente da ciò che è già stato inviato da Hydra o no. 'H' sostituirà il valore di quell'intestazione se esiste, da quella fornita dall'utente o aggiungerà l'intestazione alla fine.

Nota che se hai intenzione di mettere i due punti (:) nelle tue intestazioni dovresti sfuggirli con una barachne (\). Tutti i due punti che non sono separatori di opzioni devono essere sfuggiti (vedere gli esempi sopra e sotto). Puoi specificare un'intestazione senza sfuggire ai due punti, ma in questo modo non sarai in grado di mettere i due punti nel valore di intestazione stesso, poiché saranno interpretati da Hydra come separatori di opzioni.

Ottenere i parametri post utilizzando il browser, Iceweasel/Firefox

Nel tuo browser Firefox Premere i tasti 'Ctrl + Shift + Q'. Quindi aprire la pagina di accesso Web http: // testasp.Vulnweb.com/login.asp?Returl =%2fdefault%2easp%3f, noterai che alcuni testo vengono visualizzati nella scheda Developer di rete. Ti dice quali file ci vengono trasferiti. Vedi il metodo tutti sono ottenuti, dal momento che non abbiamo ancora pubblicato alcun dato.

Per ottenere i parametri post-forma, digitare qualsiasi cosa nel nome utente e o nel modulo di password. Noterai un nuovo metodo post nella scheda Developer di rete. Fare doppio clic su quella riga, nella scheda ""Intestazioni"" Fare clic sul pulsante ""Modifica e ricredi"" sul lato destro. Sulla richiesta del corpo copia l'ultima riga, come ad esempio ""TFUNAME = ASU & TFUPASS = RAIMU"". IL ""Tfuname"" E ""TFUPASS"" sono i parametri di cui abbiamo bisogno. Come visto di seguito:

Kali Linux ha un sacco di liste di parole, scegli la lista di parole appropriata o semplicemente usa rockyou.txt posto in /usr/share/word list/ Come visto di seguito:

Va bene, ora abbiamo tutti gli argomenti di cui abbiamo bisogno e pronti per accendere Hydra. Ecco il modello di comando:

Hydra -l -P

Infine, in base alle informazioni che abbiamo raccolto, i nostri comandi dovrebbero assomigliare a questo:

idra -l admin -p/usr/share/wordlists/rockyou.txt TesAsp.Vulnweb.com http-post-forma ""/login.asp?Returl =%2fdefault%2easp%3f: tfuname =^user^& tfupass =^pass^: s = logout ""-vv -f

Abbattiamo i comandi:

  • l : è una parola contenente account nome utente, utilizzare -L per fare riferimento all'elenco del possibile nome utente in un file.
  • P : è un elenco di file di possibile password, usa -P per utilizzare letteralmente una password di parole invece di indovinare.
  • Testapp.VunlwebApp.com : è un nome host o un target
  • Http-Post-Form : è il modulo di servizio che utilizziamo
  • ""/Login.asp?Returl =%2fdefault%2asp%3f: tfuname =^user^& tfupass =^pass^: s = logout "" = i 3 parametri necessari, la sintassi è:
    Pagina url: richiedere i parametri del modulo del corpo post: s = trova qualunque cosa nella pagina dopo l'accesso con successo
  • v = Modalità verbosa
  • V = Mostra l'accesso: passa per ogni tentativo
  • F = Termina il programma se l'accesso alla coppia: viene trovata la password

Ora lascia che Hydra provi a rompere la password per noi, ha bisogno di tempo poiché si tratta di un attacco di dizionario. Una volta riuscito a trovare una coppia di accesso: la password Hydra terminerà immediatamente il lavoro e mostrerà le credenziali valide.

C'è così tanto che Hydra potrebbe fare, dal momento che in questo tutorial abbiamo appena imparato a bluteforce Web Based Logon usando Hydra, impariamo solo un protocollo, cioè protocollo HTTP-Post-Form. Possiamo anche usare Hydra contro un altro protocollo come SSH, FTP, Telnet, VNC, Proxy, ecc.

"