Strona logowania na oparciu o crack z Hydra w Kali Linux

Strona logowania na oparciu o crack z Hydra w Kali Linux

Hasło jest technicznie zdefiniowane jako tajny ciąg znaków używanych do uwierzytelniania lub uzyskiwania dostępu do zasobów. Musi być trzymany w tajemnicy i ukryty przed innymi, których nie wolno uzyskać dostępu do tych zasobów. Hasła były używane z komputerami od najwcześniejszych dni komputerów. Jeden z systemów dzielenia się po raz pierwszy, został wprowadzony w 1961 roku. Miał polecenie logowania, które poprosiło o hasło użytkownika. Po wpisaniu „hasła” system wyłącza mechanizm drukowania, jeśli to możliwe, aby użytkownik mógł wpisać swoje hasło z prywatnością.

Siła hasła jest funkcją długości, złożoności i nieprzewidywalności. Mierzy skuteczność w opieraniu się zgadywaniu lub łamaniu. Z drugiej strony słabe hasła skracają czas niezbędny do zgadywania i uzyskania dostępu do osobistych/korporacyjnych e-maili, poufne dane, takie jak informacje finansowe, informacje biznesowe, karty kredytowe itp.

Istnieje wiele sposobów, w jakie hasło może być słabe odpowiadające mocy mocnej strony różnych schematów ataku. Najpopularniejszym z tego rodzaju poświadczonym atakiem jest brutalna siła. Jest to metoda prób i błędów, taka jak zgadywanie, próba dekodowania zaszyfrowanych danych, takich jak hasło lub szyfrowanie danych używane przez program aplikacyjny lub „narzędzie hakerskie”.

Hydra jest najszybszym krakerinem logowania sieciowego, który obsługuje liczne protokoły ataku. Jest bardzo szybki i elastyczny, a nowe moduły są łatwe do dodania. To narzędzie umożliwia naukowcom i konsultantom ds. Bezpieczeństwa pokazanie, jak łatwo byłoby zdalnie uzyskać nieautoryzowany dostęp do systemu. Hydra została napisana przez Van Hausera i dodatkowo wspierana przez Davida Maciejaka. W najnowszej aktualizacji Hydra Development zostaje przeniesiony do publicznego repozytorium Github pod adresem: https: // github.com/vanhauser-thc/thc-hydra.

Hydra przetestowano w celu skompilowania w systemie Linux, Windows/Cygwin, Solaris 11, FreeBSD 8.1, OpenBSD, OSX, QNX/Blackberry i jest udostępniany w ramach GPLV3 ze specjalnym rozszerzeniem licencji OpenSSL.

THC Hydra obsługuje te protokoły: 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, SIP, SIP, SIP, 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.

Porównanie Hydry z innymi narzędziami do pękania

Istnieje również narzędzia krakersy logowania obok Hydra, jednak żadna nie obsługuje ogromnej listy protokołów i równoległej obsługi krakersów logowania, takiej jak Hydra. Tabele poniżej pokazują wynik funkcji, usług i porównywania prędkości z Medusą i Ncrack.

Cechy

Funkcja Hydra Medusa Ncrack
Licencja AGPLV3 GPLV2 Warunki GPLV2 + NMAP
Obsługa IPv6 Tak NIE NIE
Graficzny interfejs użytkownika Tak Tak NIE
Międzynarodowe wsparcie (RFC 4013) Tak NIE NIE
Obsługa proxy HTTP Tak Tak NIE
Skarpetki proxy wsparcie Tak NIE NIE
Obsługiwane protokoły 51 22 7

Usługi

Crack Web Login Strona z

Praca Detale Hydra Medusa Ncrack
Adam-6500 Tak NIE NIE
AFP Tak Tak NIE
Gwiazdka Tak NIE NIE
Hasło Cisco Tak NIE NIE
Cisco włącza Tak NIE NIE
CVS Tak Tak NIE
ognisty Ptak Tak NIE NIE
Ftp Tak Tak Tak
Wsparcie SSL Auth TLS & FTP nad SSL Auth TLS & FTP nad SSL NIE
Http Metody (y) Zdobądź, głow, post DOSTAWAĆ DOSTAWAĆ
Basic Auth Tak Tak Tak
Formularz HTTP Metody (y) Zdobądź, post Zdobądź, post NIE
Wsparcie SSL Https Https NIE
Http Proxy Basic Auth Tak NIE NIE
Digest-MD5 Auth Tak NIE NIE
NTLM Auth Tak NIE NIE
Wsparcie SSL Https NIE NIE
Wyliczenie adresu URL proxy HTTP Tak NIE NIE
ICQ v5 Tak
1
NIE NIE
Imap Obsługa logowania Tak Tak NIE
Obsługa logowania do autoryzacji Tak NIE NIE
Utrzymanie zwykłego wsparcia Tak Tak NIE
Wsparcie Auth CRAM-MD5 Tak NIE NIE
Wsparcie Auth Cram-SHA1 Tak NIE NIE
Wsparcie Auth Cram-SHA256 Tak NIE NIE
Wsparcie Auth Digest-MD5 Tak NIE NIE
Wsparcie Auth NTLM Tak Tak NIE
Wsparcie Auth Scram-SHA1 Tak NIE NIE
Wsparcie SSL IMAPS & starttls IMAPS & starttls NIE
IRC Ogólne hasło do serwera Tak NIE NIE
Hasło trybu operowego Tak NIE NIE
LDAP v2, proste wsparcie Tak NIE NIE
v3, proste wsparcie Tak NIE NIE
V3, wsparcie Auth CRAM-MD5 Tak NIE NIE
Wsparcie Auth Digest-MD5 Tak
Wsparcie Auth NTLM Tak Tak
Wsparcie Auth Scram-SHA1 Tak
Wsparcie SSL IMAPS & starttls IMAPS & starttls
IRC Ogólne hasło do serwera Tak
Hasło trybu operowego Tak
LDAP v2, proste wsparcie Tak
v3, proste wsparcie Tak
V3, wsparcie Auth CRAM-MD5 Tak
V3, wsparcie Auth Digest-MD5 Tak
MS-SQL Tak Tak
Mysql v3.X Tak Tak
v4.X Tak Tak
v5.X Tak Tak
NCP Tak Tak
Nntp Wsparcie użytkownika Tak Tak
Obsługa logowania do autoryzacji Tak
Utrzymanie zwykłego wsparcia Tak
Wsparcie Auth CRAM-MD5 Tak
Wsparcie Auth Digest-MD5 Tak
Wsparcie Auth NTLM Tak
Wsparcie SSL Starttls i nntp nad SSL
Wyrocznia Baza danych Tak Tak
TNS Listener Tak
Sid wyliczenie Tak
PC-NFS Tak
PCanywhere Uwierzytelnianie natywne Tak Tak
Uwierzytelnianie oparte na systemie operacyjnym (MS) Tak
Pop3 Wsparcie użytkownika Tak Tak Tak
Wsparcie Apop Tak
Obsługa logowania do autoryzacji Tak Tak
Utrzymanie zwykłego wsparcia Tak Tak
Wsparcie Auth CRAM-MD5 Tak
Wsparcie Auth Cram-SHA1 Tak
Wsparcie Auth Cram-SHA256 Tak
Wsparcie Auth Digest-MD5 Tak
Wsparcie Auth NTLM Tak Tak
Wsparcie SSL POP3S & STARTTLS POP3S & STARTTLS Pop3
PostgreSQL Tak Tak
Gwiazdka Tak
RDP Windows Workstation Tak Tak Tak
Windows Server Tak Tak
Utwór domeny Tak Tak
Redis Tak NIE
Rexec Tak Tak
Rlogin Tak Tak
RPCAP Tak NIE
Rsh Tak Tak
RTSP Tak NIE
SAP R/3 Tak
Siemens S7-300 Tak
łyk Tak
Wsparcie SSL Popijaj SSL
SMB Tryb Netbios Tak Tak NIE
Tryb natywny W2K Tak Tak Tak
Tryb HASH Tak Tak NIE
Wyraźny tekst Tak Tak
LMV1 Auth Tak Tak Tak
LMV2 Auth Tak Tak Tak
NTLMV1 Auth Tak Tak Tak
NTLMV2 Auth Tak Tak Tak
SMTP Obsługa logowania do autoryzacji Tak Tak
Utrzymanie zwykłego wsparcia Tak Tak
Wsparcie Auth CRAM-MD5 Tak
Wsparcie Auth Digest-MD5 Tak
Wsparcie Auth NTLM Tak Tak
Wsparcie SSL SMTPS i starttls SMTPS i starttls
Enum użytkownika SMTP VRFY CMD Tak Tak
Expn cmd Tak Tak
RCPT do CMD Tak Tak
Snmp v1 Tak Tak
V2C Tak Tak
v3 (Tylko MD5/SHA1 Auth)
SKARPETY v5, hasło auth Tak
Ssh v1 Tak
v2 Tak Tak Tak
Klucze SSH v1, v2 Tak
Subversion (SVN) Tak Tak
Teamspeak TS2 Tak
Telnet Tak Tak Tak
XMPP Obsługa logowania do autoryzacji Tak
Utrzymanie zwykłego wsparcia Tak
Wsparcie Auth CRAM-MD5 Tak
Wsparcie Auth Digest-MD5 Tak
Wsparcie Auth Scram-SHA1 Tak
Demon VMware Auth v1.00 / v1.10 Tak Tak
Wsparcie SSL Tak Tak
VNC RFB 3.X Obsługa hasła Tak Tak
RFB 3.x obsługa użytkownika+hasło (Tylko UltravNC)
RFB 4.X Obsługa hasła Tak Tak
RFB 4.x obsługa użytkownika+hasło (Tylko UltravNC)

Porównanie prędkości

Prędkość (w s) Hydra Medusa Ncrack
1 moduł zadania / ftp 11.93 12.97 18.01
4 zadania / moduł FTP 4.20 5.24 9.01
16 zadań / moduł FTP 2.44 2.71 12.01
1 moduł zadania / ssh v2 32.56 33.84 45.02
4 zadania / moduł SSH v2 10.95 Złamany Pominięty
16 zadań / moduł SSH v2 5.14 Złamany Pominięty

To było krótkie proste wprowadzenie do Hydry. Teraz przejdźmy do instalacji.

Instalowanie Hydra

Hydra jest wstępnie zainstalowana na Kali Linux, jednak jeśli masz inny system operacyjny, możesz go skompilować i zainstalować w swoim systemie. Obecnie wsparcie Hydra na różnych platformach:

  • Wszystkie platformy UNIX (Linux, *BSD, Solaris itp.)
  • MacOS (w zasadzie klon BSD)
  • Windows z Cygwin (zarówno IPv4, jak i IPv6)
  • Systemy mobilne oparte na Linux, MacOS lub QNX (e.G. Android, iPhone, Blackberry 10, Zaurus, IPAQ)

Aby pobrać, skonfigurować, skompilować i zainstalować Hydra, po prostu wpisz do terminalu:

Git Clone https: // github.com/vanhauser-thc/thc-hydra.git
CD thc-hydra
./skonfiguruj
robić
Zrób instalację

Jeśli masz Ubuntu/Debian, będziesz potrzebować bibliotek zależności:

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

Jeśli nie możesz znaleźć tych bibliotek w swoim repozytorium, musisz je pobrać i zainstalować ręcznie.

Jak używać Hydra

Gratulacje, teraz udało ci się zainstalować Hydra w swoim systemie. Właściwie Hydra jest wyposażona w dwa smaki, gui-gtk i moją ulubioną wersję CLI. a ponadto Hydra ma również wersję z przewodnikiem CLI, nazywa się „hydra-wizard”. Zostaniesz kierowany krok po kroku zamiast wpisywać wszystkie polecenia lub argumenty ręcznie w terminalu. Aby uruchomić hydrę, z typu terminala:

Dla CLI:

hydra

Dla Cli-Wizard:

hydra-wizard

Dla GUI:

xhydra

Po wpisaniu „hydra” wyświetli takie polecenia pomocy:

root@kali: ~# hydra -h
Hydra V8.6 (c) 2017 autorstwa Van Hauser/THC i David Maciejak - tylko do celów prawnych
Składnia: hydra [[[-l login | -l] [-p Pass | -p Plik]] | [-C plik]] [-e nsr] [-o plik] [-t zadania] [-m plik [-t zadania]] [-w czas] [-w czas] [-f] [-s port] [-x min: maks.: charset] [-SUVV46] [service: // server [: port] [/opt]]]
Opcje:
-R Przywróć poprzednią przerwaną/rozbitą sesję
-S Wykonaj połączenie SSL
-Port s Jeśli usługa znajduje się w innym domyślnym porcie, zdefiniuj go tutaj
-l Zaloguj się lub -l login z nazwą logowania lub załaduj kilka loginów z pliku
-p plik lub -p Plik wypróbuj hasło przekaż lub załaduj kilka haseł z pliku
-X min: Max: Hasło do zbrojenia Bruteforce Generowanie, typ „-x -h”, aby uzyskać pomoc
-E nsr spróbuj „n” null hasło, „login” S ”jako przełęcz i/lub„ r ”login
-U użytkowników, a nie hasła (skuteczne! implikowane z -x)
-Plik c Plik okrężnicy oddzielony „login: Pass”, zamiast opcji -l/-p
-L lista plików serwerów, które należy atakować równolegle, jeden wpis na wiersz
-o Plik zapisu Znaleziono pary logowania/hasła do pliku zamiast stdout
-F / -f Wyjście, gdy znajduje się para logowania / przepustki (-m: -f na host, -f globalny)
-t Zadania uruchamiane zadania liczba połączeń równolegle (na host, domyślnie: 16)
-W / -w czas na odpowiedzi (32s) / między łączami na wątek
-4 / -6 Preferuj adresy IPv4 (domyślnie) lub IPv6
-V / -V / -D WSKAZÓWKI TRYB WSKAZÓWKI / POWAD LOGIN+PASS dla każdego trybu próby / debugowania
-Szczegóły dotyczące użycia modułu serwisowego U
serwer serwer docelowy (użyj tej lub opcji -m)
Usługa usługi do pęknięcia (patrz poniżej obsługiwane protokoły)
Wybierz niektóre moduły serwisowe obsługują dodatkowe dane wejściowe (-u dla pomocy modułu)
Obsługiwane usługi: asterisk AFP Cisco Cisco-Enable CVS Firebird ftp ftps http [s]-head | get http [s]-get | Post -Form Http-Proxy Http-Proxy-Urenum ICQ IMAP [S] IRC LDAP2 [s] ldap3 [-cram | digest md5] [s] mssql mysql ncp nntp Oracle-Listener Oracle-sid pcanywhere pcnfs pop3 [Postgres RDP rexec rlogin rsh s7-300 SIP SMB SMB [S] SMTP-enum Snmp Snmp Socks5 Ssh Sshkey SVN TeamSpeak Telnet [S] Vmauthd VNC XMPP
Hydra to narzędzie do zgadywania/cracania prawidłowe pary logowania/hasła - użytkowanie dozwolone tylko do celów prawnych. To narzędzie jest licencjonowane w ramach AGPL V3.0.
Najnowsza wersja jest zawsze dostępna na stronie http: // www.thc.org/thc-hydra
Usługi te nie zostały skompilowane w: SAPR3 Oracle.
Użyj hydra_proxy_http lub hydra_proxy - i w razie potrzeby hydra_proxy_auth - środowisko do konfiguracji proxy.
mi.G.: % eksport hydra_proxy = Socks5: // 127.0.0.1: 9150 (lub Socks4: // lub podłącz: //)
% Eksportuj hydra_proxy_http = http: // proxy: 8080
% Eksportuj hydra_proxy_auth = użytkownik: Pass
Przykłady:
hydra -l użytkownika -p Passlist.txt ftp: // 192.168.0.1
HYDRA -L LISTA Użytkownicy.txt -p defaultpw imap: // 192.168.0.1/Plain
Hydra -C domyślnie.TXT -6 POP3S: // [FE80 :: 2C: 31ff: Fe12: AC11]: 143/TLS: Digest -MD5
hydra -l admin -p hasło ftp: // [192.168.0.0/24]/
Loginy hydra -l.TXT -p PWS.TXT -M.txt ssh

Logowanie oparte na sieci Bruteforce z Hydra

Hydra obsługuje pewną brutalną usługę, jak wspomniałem wcześniej, jedna z nich służy do loginów internetowych Bruteforce, takich jak formularz logowania mediów społecznościowych, formularz logowania bankowości użytkowników, login oparty na routerze itp. Że „http [s]-get | post -Form”, które poradzi sobie z tym żądaniem. W tym samouczku pokażę ci, jak brutalne wrażliwe loginy internetowe. Zanim zwolnimy Hydrę, powinniśmy znać kilka potrzebnych argumentów, takich jak:

  • Cel : http: // testasp.VulnWeb.com/login.żmija?Returl =%2FDEFAULT%2EASP%3F
  • Login nazwa użytkownika : Admin (Jeśli nie masz pewności, Bruteforce to)
  • Lista haseł : „Lokalizacja listy plików słownika zawierająca możliwe hasła."
  • Parametry formularzy : „W przypadku ogólnej, użyj danych manipulacji lub proxy, aby uzyskać formę parametrów żądania. Ale tutaj używam IceWeasel, Firefox, narzędzi narzędzi programistów sieciowych."
  • Moduł serwisowy : Forma HTTP-post

Pomoc dla modułu HTTP-post-form:

Moduł HTTP-post-forma wymaga strony i parametrów dla formularza internetowego. Domyślnie ten moduł jest skonfigurowany do maksymalnie 5 przekierowań z rzędu. Zawsze gromadzi nowe ciasteczka z tego samego adresu URL bez zmiennych Parametry przyjmują trzy wartości „:”, a także wartości opcjonalne. (Uwaga: jeśli potrzebujesz okrężnicy w ciągu opcji jako wartości, uciekaj z „\:”, ale nie uciekaj „\” z „\\”.)

Składnia:

[URL]: [Parametry formularza]: [warunek ciąg] [:( opcjonalnie) [:( opcjonalnie)]
  • Pierwsza jest strona na serwerze, aby uzyskać lub opublikować do (URL).
  • Drugi to zmienne post/get (pobrane z przeglądarki, proxy itp. z nazwami użytkowników i haseł zastępowane w symbole zamawiających „^Użytkownik^” i „^Pass^” (parametry formularza).
  • Po trzecim jest ciąg, który sprawdza * logowanie * nieprawidłowe (domyślnie) Kontrola logowania warunku może być poprzedzona przez „f =”, skuteczne kontrola logowania warunków musi być poprzedzona przez „s =”.

W tym miejscu większość ludzi źle to rozumie. Musisz sprawdzić, jak wygląda nieudany ciąg i umieścić go w tym parametrze!

Poniższe parametry są opcjonalne:

C =/page/URI, aby zdefiniować inną stronę, aby zebrać początkowe pliki cookie z (h | h) = my-hdr \: foo, aby wysłać nagłówek http zdefiniowany przez użytkownika z każdym żądaniem ^ i ^ Pass ^ można również włożyć te nagłówki!

Notatka: „H” doda na końcu zdefiniowany przez użytkownika nagłówek, niezależnie od tego, że jest już wysyłany przez Hydra, czy nie. „H” zastąpi wartość tego nagłówka, jeśli istnieje, przez to dostarczone przez użytkownika, lub dodaj nagłówek na końcu.

Pamiętaj, że jeśli zamierzasz włożyć kolony (:) w nagłówkach, powinieneś uciec je z backslash (\). Wszystkie kolony, które nie są separatorami opcji, należy uciec (patrz przykłady powyżej i poniżej). Możesz określić nagłówek bez ucieczki z okrężnicy, ale w ten sposób nie będziesz mógł umieścić okołów w samej wartości nagłówka, ponieważ będą one interpretowane przez Hydra jako separatory opcji.

Uzyskanie parametrów postu za pomocą przeglądarki, lodowości/przeglądarki Firefox

W przeglądarce Firefox naciśnij klawiszeCtrl + Shift + Q'. Następnie otwórz stronę logowania internetowego http: // testasp.VulnWeb.com/login.żmija?Returl =%2fdefault%2EASP%3F, zauważysz, że jakiś tekst pojawi się na karcie Deweloper Network. Mówi ci, jakie pliki są do nas przesyłane. Zobacz, jak wszystko się dostaje, ponieważ nie opublikowaliśmy jeszcze żadnych danych.

Aby uzyskać parametry po formie, wpisz cokolwiek w formie nazwy użytkownika i lub hasła. Zauważysz nową metodę postu na karcie Deweloper Network. Kliknij dwukrotnie ten wiersz, na karcie „Nagłówki” Kliknij przycisk „Edytuj i ponownie” po prawej stronie. Na żądanie Kopiuj ostatni wiersz, taki jak „Tfuname = ASU & tfupass = Raimu”. „Tfuname” I „Tfupass” to parametry, których potrzebujemy. Jak widać poniżej:

Kali Linux ma kilka list słów, wybierz odpowiednią listę słów lub po prostu użyj Rockyou.txt miejsce /usr/share/sordLists/ Jak widać poniżej:

W porządku, teraz mamy wszystkie argumenty, których potrzebujemy i gotowi do zwolnienia Hydry. Oto wzorzec poleceń:

hydra -l -P

Wreszcie, w oparciu o informacje, które zebraliśmy, nasze polecenia powinny wyglądać mniej więcej tak:

hydra -l admin -p/usr/share/słowniki/rockyou.TXT Testasp.VulnWeb.com http-post-form ”/login.żmija?Returl =%2fdefault%2easp%3f: tfuname =^Użytkownik^& tfupass =^Pass^: s = logout "-vv -f

Rozbijmy polecenia:

  • L : to słowo zawierające konto nazwy użytkownika, użyj -l, aby odwołać listę możliwej nazwy użytkownika w pliku.
  • P : to lista plików możliwego hasła, użyj -p, aby dosłownie użyć jednego słowa hasła zamiast zgadywać.
  • TestApp.Vunlwebapp.com : to nazwa hosta lub cel
  • HTTP-post-form : to moduł serwisowy, którego używamy
  • "/Zaloguj sie.żmija?Returl =%2fdefault%2EASP%3f: tfuname =^Użytkownik^& tfupass =^Pass^: s = logout ” = 3 potrzebne parametry, składnia to:
    Page URL: żądaj Parametry formularza Body Post: s = Znajdź cokolwiek na stronie po sukcesywnym zalogowaniu
  • v = Tryb wetbose
  • V = Pokaż logowanie: przejdź dla każdej próby
  • F = Zakończ program, jeśli login pary: Znaleziono hasło

Teraz pozwólmy, aby Hydra próbowała złamać hasło dla nas, potrzebuje czasu, ponieważ jest to atak słownika. Po odniesieniu sukcesu w znalezieniu loginu: Hasło Hydra natychmiast zakończy zadanie i pokaże prawidłowe poświadczenie.

Jest tak wiele, co Hydra mogła zrobić, ponieważ w tym samouczku właśnie nauczyliśmy się logowania opartego na sieci Bruteforce za pomocą Hydra, uczymy się tylko jednego protokołu, czyli protokołu HTTP-post-formy. Możemy również użyć HYDRA przeciwko kolejnemu protokołowi, takimi jak SSH, FTP, Telnet, VNC, proxy itp.