Crack Pagina de autentificare bazată pe web cu Hydra în Kali Linux

Crack Web Based Login Page With Hydra Kali Linux



O parolă este definită tehnic ca un șir secret de caractere utilizate pentru autentificarea sau accesul la resurse. Trebuie păstrat în secret și ascuns de alții cărora nu li se permite accesul la resursele respective. Parolele au fost utilizate cu computerele încă din primele zile de calcul. Unul dintre primele sisteme de partajare a fost introdus în 1961. Avea o comandă de conectare care solicita o parolă de utilizator. După ce ați tastat PASSWORD, sistemul oprește mecanismul de imprimare, dacă este posibil, astfel încât utilizatorul să poată introduce parola cu confidențialitate.

Punctul forte al unei parole este o funcție de lungime, complexitate și imprevizibilitate. Măsoară eficiența în a rezista la ghicire sau rupere. Parolele slabe, pe de altă parte, scurtează timpul necesar pentru a ghici și a avea acces la e-mailurile personale / corporative, date sensibile precum informații financiare, informații despre afaceri, carduri de credit etc.







Există multe moduri în care o parolă poate fi slabă, corespunzând puterii punctelor forte ale diferitelor scheme de atac. Cel mai popular atac de acreditare este forța brută. este o metodă de încercare și eroare, cum ar fi ghicitul, încercarea de a decoda datele criptate, cum ar fi parola sau criptarea datelor utilizate de programul de aplicații sau instrumentul de hacking.



Hydra este cel mai rapid cracker de conectare la rețea care acceptă numeroase protocoale de atac. Este foarte rapid și flexibil, iar modulele noi sunt ușor de adăugat. Acest instrument face posibil ca cercetătorii și consultanții în securitate să arate cât de ușor ar fi să obțineți acces neautorizat la un sistem de la distanță. Hydra a fost scrisă de van Hauser și a fost susținută suplimentar de David Maciejak. În cea mai recentă actualizare, dezvoltarea hydra este mutată în depozitul github public la: https://github.com/vanhauser-thc/thc-hydra.



Hydra a fost testat pentru a compila pe Linux, Windows / Cygwin, Solaris 11, FreeBSD 8.1, OpenBSD, OSX, QNX / Blackberry și este disponibil sub GPLv3 cu o extensie specială de licență OpenSSL.





THC Hydra acceptă aceste protocoale: Cisco AAA, Cisco auth, Cisco enable, CVS, FTP, HTTP (S) -FORM-GET, HTTP (S) -FORM-POST, HTTP (S) -GET, HTTP (S) -HEAD , HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MS-SQL, MySQL, NNTP, Oracle Listener, 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 și v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC și XMPP.

COMPARAREA HIDRULUI CU ALTE UNELTE DE CRACARE

Există, de asemenea, o mulțime de instrumente de cracker de conectare lângă Hydra, cu toate acestea, niciunul nu acceptă o listă uriașă de protocoale și suport paralelizat de cracker de conectare, așa cum face Hydra. Tabelele de mai jos prezintă rezultatul comparării caracteristicilor, serviciilor și vitezei cu medusa și ncrack.



Caracteristici

Caracteristică Hidra meduze Ncrack
Licență AGPLv3 GPLv2 Termeni GPLv2 + Nmap
Suport IPv6 da Nu Nu
Interfață grafică pentru utilizator da da Nu
Suport internaționalizat (RFC 4013) da Nu Nu
Suport proxy HTTP da da Nu
Suport proxy SOCKS da Nu Nu
Protocoale acceptate 51 22 7

Servicii

Crack Pagina de autentificare bazată pe web cu

Serviciu Detalii Hidra meduze Ncrack
ADAM-6500 da Nu Nu
AFP da da Nu
Asterisc da Nu Nu
Parola Cisco da Nu Nu
Activare Cisco da Nu Nu
CVS da da Nu
Firebird da Nu Nu
FTP da da da
Suport SSL AUTH TLS & FTP pe SSL AUTH TLS & FTP pe SSL Nu
HTTP Metode GET, CAP, POST OBȚINE OBȚINE
Aut. De bază da da da
Formular HTTP Metode GET, POST GET, POST Nu
Suport SSL HTTPS HTTPS Nu
Http proxy Aut. De bază da Nu Nu
DIGEST-MD5 Auth da Nu Nu
NTLM Auth da Nu Nu
Suport SSL HTTPS Nu Nu
Enumerare URL PROXY HTTP da Nu Nu
ICQ v5 da
1
Nu Nu
IMAP Suport LOGIN da da Nu
Asistență AUTENTIFICARE LOGIN da Nu Nu
Suport AUTENT PLAIN da da Nu
Suport AUTH CRAM-MD5 da Nu Nu
Suport AUTH CRAM-SHA1 da Nu Nu
Suport AUTH CRAM-SHA256 da Nu Nu
Asistență AUTH DIGEST-MD5 da Nu Nu
Suport AUTH NTLM da da Nu
Suport AUTH SCRAM-SHA1 da Nu Nu
Suport SSL IMAPS & STARTTLS IMAPS & STARTTLS Nu
IRC Parola generală a serverului da Nu Nu
Parolă mod OPER da Nu Nu
LDAP v2, suport simplu da Nu Nu
v3, Suport simplu da Nu Nu
v3, suport AUTH CRAM-MD5 da Nu Nu
Asistență AUTH DIGEST-MD5 da
Suport AUTH NTLM da da
Suport AUTH SCRAM-SHA1 da
Suport SSL IMAPS & STARTTLS IMAPS & STARTTLS
IRC Parola generală a serverului da
Parolă mod OPER da
LDAP v2, suport simplu da
v3, Suport simplu da
v3, suport AUTH CRAM-MD5 da
v3, suport AUTH DIGEST-MD5 da
MS-SQL da da
MySQL v3.x da da
v4.x da da
v5.x da da
NCP da da
NNTP Suport UTILIZATOR da da
Asistență AUTENTIFICARE LOGIN da
Suport AUTENT PLAIN da
Suport AUTH CRAM-MD5 da
Asistență AUTH DIGEST-MD5 da
Suport AUTH NTLM da
Suport SSL STARTTLS și NNTP prin SSL
Oracol Bază de date da da
Ascultător TNS da
Enumerare SID da
PC-NFS da
pcAnywhere Autentificare nativă da da
Autentificare bazată pe sistem de operare (MS) da
POP3 Suport UTILIZATOR da da da
Suport APOP da
Asistență AUTENTIFICARE LOGIN da da
Suport AUTENT PLAIN da da
Suport AUTH CRAM-MD5 da
Suport AUTH CRAM-SHA1 da
Suport AUTH CRAM-SHA256 da
Asistență AUTH DIGEST-MD5 da
Suport AUTH NTLM da da
Suport SSL POP3S & STARTTLS POP3S & STARTTLS POP3S
PostgreSQL da da
Asterisc da
PDR Stație de lucru Windows da da da
Windows Server da da
Autentificare domeniu da da
REDIS da Nu
REXEC da da
RLOGIN da da
RPCAP da Nu
RSH da da
RTSP da Nu
SAP R / 3 da
Siemens S7-300 da
ÎNGHIŢITURĂ da
Suport SSL SIP pe SSL
SMB Mod NetBIOS da da Nu
Mod nativ W2K da da da
Modul Hash da da Nu
Ștergeți autentificarea textului da da
LMv1 Aut da da da
LMv2 Auth da da da
NTLMv1 Auth da da da
NTLMv2 Auth da da da
SMTP Asistență AUTENTIFICARE LOGIN da da
Suport AUTENT PLAIN da da
Suport AUTH CRAM-MD5 da
Asistență AUTH DIGEST-MD5 da
Suport AUTH NTLM da da
Suport SSL SMTPS & STARTTLS SMTPS & STARTTLS
Enumerare utilizator SMTP VRFY cmd da da
EXPN cmd da da
RCPT TO cmd da da
SNMP v1 da da
v2c da da
v3 (Numai autentificare MD5 / SHA1)
CALCETINE v5, Autentificare parolă da
SSH v1 da
v2 da da da
Taste SSH v1, v2 da
Subversiune (SVN) da da
Echipa vorbeste TS2 da
Telnet da da da
XMPP Asistență AUTENTIFICARE LOGIN da
Suport AUTENT PLAIN da
Suport AUTH CRAM-MD5 da
Asistență AUTH DIGEST-MD5 da
Suport AUTH SCRAM-SHA1 da
Daemon VMware Auth v1.00 / v1.10 da da
Suport SSL da da
VNC Suport pentru parolă RFB 3.x da da
Suport utilizator RFB 3.x + parolă (Numai UltraVNC)
Suport pentru parolă RFB 4.x da da
Suport utilizator RFB 4.x + parolă (Numai UltraVNC)

Compararea vitezei

Viteza (în s) Hidra meduze Ncrack
1 Modul Task / FTP 11,93 12,97 18.01
4 Sarcini / modul FTP 4.20 5.24 9.01
16 Sarcini / modul FTP 2,44 2,71 12.01
1 Modul Task / SSH v2 32,56 33,84 45.02
4 Sarcini / modul SSH v2 10,95 Spart Ratat
16 Sarcini / modul SSH v2 5.14 Spart Ratat

Aceasta a fost o scurtă introducere simplă la hidra. Acum să trecem la instalare.

INSTALAREA HIDRA

Hydra este preinstalat pe kali linux, cu toate acestea, dacă aveți un alt sistem de operare, îl puteți compila și instala pe sistemul dvs. În prezent, asistența Hydra pe diferite platforme:

  • Toate platformele UNIX (Linux, * bsd, Solaris etc.)
  • MacOS (practic o clonă BSD)
  • Windows cu Cygwin (atât IPv4, cât și IPv6)
  • Sisteme mobile bazate pe Linux, MacOS sau QNX (de exemplu, Android, iPhone, Blackberry 10, Zaurus, iPaq)

Pentru a descărca, configura, compila și instala hydra, trebuie doar să tastați în terminal:

git clone https://github.com/vanhauser-thc/thc-hydra.git cd thc-hydra ./configure make make install 

Dacă aveți Ubuntu / Debian, veți avea nevoie de câteva biblioteci de dependență:

apt install libssl-dev libssh-dev libidn11-dev libpcre3-dev libgtk2.0-dev libmysqlclient-dev libpq-dev libsvn-dev firebird-dev libncp-dev 

Dacă nu ați putut găsi acele biblioteci în depozitul dvs., atunci trebuie să le descărcați și să le instalați manual.

CUM SĂ UTILIZAȚI HYDRA

Felicitări, acum ați reușit să instalați Hydra pe sistemul dvs. De fapt, Hydra vine cu două variante, GUI-gtk și versiunea mea preferată, CLI. și, în plus, hydra are, de asemenea, versiunea ghidată CLI, denumită hydra-wizard. Veți fi ghidat pas cu pas în loc să introduceți manual toate comenzile sau argumentele în terminal. Pentru a rula Hydra, de la tipul terminalului:

Pentru CLI:

hydra

Pentru CLI-wizard:

hydra-wizard

Pentru GUI:

xhydra

După ce tastați ‘hydra’, acesta va afișa comenzi de ajutor de genul acesta:

 [email protected] :~# hydra -h Hydra v8.6 (c)2017 by van Hauser/THC & David Maciejak - for legal purposes only Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN:MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]] Options: -R restore a previous aborted/crashed session -S perform an SSL connect -s PORT if the service is on a different default port, define it here -l LOGIN or -L FILE login with LOGIN name, or load several logins from FILE -p PASS or -P FILE try password PASS, or load several passwords from FILE -x MIN:MAX:CHARSET password bruteforce generation, type '-x -h' to get help -e nsr try 'n' null password, 's' login as pass and/or 'r' reversed login -u loop around users, not passwords (effective! implied with -x) -C FILE colon separated 'login:pass' format, instead of -L/-P options -M FILE list of servers to be attacked in parallel, one entry per line -o FILE write found login/password pairs to FILE instead of stdout -f / -F exit when a login/pass pair is found (-M: -f per host, -F global) -t TASKS run TASKS number of connects in parallel (per host, default: 16) -w / -W TIME waittime for responses (32s) / between connects per thread -4 / -6 prefer IPv4 (default) or IPv6 addresses -v / -V / -d verbose mode / show login+pass for each attempt / debug mode -U service module usage details server the target server (use either this OR the -M option) service the service to crack (see below for supported protocols) OPT some service modules support additional input (-U for module help) Supported services: asterisk afp cisco cisco-enable cvs firebird ftp ftps http[s]-head http[s]-post-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] ldap3[-crammd5][s] mssql mysql ncp nntp oracle-listener oracle-sid pcanywhere pcnfs pop3[s] postgres rdp rexec rlogin rsh s7-300 sip smb smtp[s] smtp-enum snmp socks5 ssh sshkey svn teamspeak telnet[s] vmauthd vnc xmpp Hydra is a tool to guess/crack valid login/password pairs - usage only allowed for legal purposes. This tool is licensed under AGPL v3.0. The newest version is always available at http://www.thc.org/thc-hydra These services were not compiled in: sapr3 oracle. Use HYDRA_PROXY_HTTP or HYDRA_PROXY - and if needed HYDRA_PROXY_AUTH - environment for a proxy setup. E.g.: % export HYDRA_PROXY=socks5://127.0.0.1:9150 (or socks4:// or connect://) % export HYDRA_PROXY_HTTP=http://proxy:8080 % export HYDRA_PROXY_AUTH=user:pass Examples: hydra -l user -P passlist.txt ftp://192.168.0.1 hydra -L userlist.txt -p defaultpw imap://192.168.0.1/PLAIN hydra -C defaults.txt -6 pop3s://[fe80::2c:31ff:fe12:ac11]:143/TLS:DIGEST-MD5 hydra -l admin -p password ftp://[192.168.0.0/24]/ hydra -L logins.txt -P pws.txt -M targets.txt ssh

Conectare bazată pe web Bruteforce cu hydra

Hydra acceptă unele servicii bruteforcing, așa cum am menționat mai devreme, unul dintre ele este utilizat pentru a bruteforce conectări bazate pe web, cum ar fi, formularul de conectare la rețelele de socializare, formularul de conectare bancară de utilizator, datele de conectare ale routerului dvs., etc. Acest http [s] care se va ocupa de această cerere. În acest tutorial îți voi arăta cum să forțezi conectările web vulnerabile. Înainte de a declanșa hidra, ar trebui să știm câteva argumente necesare, cum ar fi mai jos:

  • Ţintă : http://testasp.vulnweb.com/Login.asp?RetURL=%2FDefault%2Easp%3F
  • Autentificare nume de utilizator : admin (dacă nu sunteți sigur, forțați brute)
  • Lista de parole : Locația listei de fișiere din dicționar care conține parole posibile.
  • Parametrii formularului : în general, utilizați date de manipulare sau proxy pentru a obține parametri de formă de solicitare. Dar aici folosesc iceweasel, bazat pe Firefox, bara de instrumente pentru dezvoltatori de rețea.
  • Modulul de service : http-post-formular
Help for module http-post-form: ============================================================================ Module http-post-form requires the page and the parameters for the web form. By default this module is configured to follow a maximum of 5 redirections in a row. It always gathers a new cookie from the same URL without variables The parameters take three ':' separated values, plus optional values. (Note: if you need a colon in the option string as value, escape it with ':', but do not escape a '' with '\'.) Syntax: [url]:[form parameters]:[condition string][:(optional)[:(optional)] First is the page on the server to GET or POST to (URL). Second is the POST/GET variables (taken from either the browser, proxy, etc. with usernames and passwords being replaced in the '^USER^' and '^PASS^' placeholders (FORM PARAMETERS) Third is the string that it checks for an *invalid* login (by default) Invalid condition login check can be preceded by 'F=', successful condition login check must be preceded by 'S='. This is where most people get it wrong. You have to check the webapp what a failed string looks like and put it in this parameter! The following parameters are optional: C=/page/uri to define a different page to gather initial cookies from (h|H)=My-Hdr: foo to send a user defined HTTP header with each request ^USER^ and ^PASS^ can also be put into these headers! Note: 'h' will add the user-defined header at the end regardless it's already being sent by Hydra or not. 'H' will replace the value of that header if it exists, by the one supplied by the user, or add the header at the end Note that if you are going to put colons (:) in your headers you should escape them with a backslash (). All colons that are not option separators should be escaped (see the examples above and below). You can specify a header without escaping the colons, but that way you will not be able to put colons in the header value itself, as they will be interpreted by hydra as option separators.

Obținerea parametrilor postării utilizând browserul, iceweasel / Firefox

În browserul dvs. Firefox, apăsați tastele „ CTRL + SHIFT + Q ‘. Apoi deschideți pagina de conectare webhttp://testasp.vulnweb.com/Login.asp?RetURL=%2FDefault%2Easp%3F, veți observa că un text apare în fila dezvoltator de rețea. Vă spune ce fișiere sunt transferate către noi. Vedeți metoda, toate sunt GET, deoarece nu am POST niciun fel de date.

Pentru a obține parametrii post-formular, tastați orice în formularul de nume de utilizator și / sau parolă. Veți observa o nouă metodă POST în fila dezvoltator de rețea. Faceți dublu clic pe acea linie, în fila Headers faceți clic pe butonul Editați și Retrimiteți din partea dreaptă. Pe corpul cererii copiați ultima linie, cum ar fi tfUName = asu & tfUPass = raimu . the tfUName și tfUPass sunt parametrii de care avem nevoie. După cum se vede mai jos:

Kali linux are o mulțime de liste de cuvinte, alegeți lista de cuvinte potrivită sau pur și simplu utilizați locul rockyou.txt în / usr / share / liste de cuvinte / așa cum se vede mai jos:

Bine, acum avem toate argumentele de care avem nevoie și suntem gata să declanșăm hidra. Iată modelul de comandă:

hydra -l -P [/code] Finally, based on information we have gathered, our commands ahould look something like this: hydra -l admin -P /usr/share/wordlists/rockyou.txt testasp.vulnweb.com http-post-form '/Login.asp?RetURL=%2FDefault%2Easp%3F:tfUName=^USER^&tfUPass=^PASS^:S=logout' -vV -f

Să descompunem comenzile:

  • the : este un cuvânt care conține un cont de nume de utilizator, utilizați -L pentru a consulta lista posibilului nume de utilizator într-un fișier.
  • P : este o listă de fișiere cu o parolă posibilă, folosiți -p pentru a utiliza literalmente parola cu un cuvânt în loc să o ghiciți.
  • testapp.vunlwebapp.com : este un nume de gazdă sau o țintă
  • http-post-formular : este modulul de servicii pe care îl folosim
  • /Login.asp?RetURL=%2FDefault%2Easp%3F:tfUName=^USER^&tfUPass=^PASS^:S=logout = cei 3 parametri necesari, sintaxa este:
    {URL pagină}: {Solicitați parametrii formularului corpului postării}: S = {Găsiți orice în pagină după ce v-ați conectat cu succes}
  • v = Mod verbos
  • V = arată login: treceți pentru fiecare încercare
  • f = Terminați programul dacă conectați perechea: este găsită parola

Acum, permiteți ca Hydra să încerce să rupă parola pentru noi, are nevoie de timp, deoarece este un atac de dicționar. Odată ce ați reușit să găsiți o pereche de date de conectare: parola hydra va încheia imediat lucrarea și va afișa acreditările valide.

Există atât de multe lucruri pe care Hydra le-ar putea face, deoarece în acest tutorial tocmai am învățat cum să realizăm conectarea bazată pe web folosind Hydra, învățăm doar un singur protocol, adică protocolul http-post-formular. De asemenea, putem folosi Hydra împotriva altui protocol, cum ar fi ssh, ftp, telnet, VNC, proxy etc.