# HYDRA

<figure><img src="/files/3w4ZTznNufuMXxvH2NEx" alt="" width="650"><figcaption></figcaption></figure>

## **HYDRA NEDİR?**

Hydra, Kali Linux ile birlikte gelen ve sızma testlerinde Brute-Force saldırıları için kullanılan güçlü bir araçtır. Bu yazılım, çeşitli protokolleri (HTTP, FTP, SSH, Telnet, vb.) hedefleyerek parola kırma işlemlerini otomatikleştirir. Online olarak parola kırmaya yönelik olan Hydra, kullanıcı adı ve parola listelerini alarak sistemlere otomatik denemeler yapar ve doğru kombinasyonu bulana kadar sürekli deneme yapmaya devam eder. Adını yunan mitolojisindeki çok başlı yaratıktan alan Hydra, sisteminizde yüklü değilse veya yüklemek istiyorsanız, ilgili adımları takip etmelisiniz. Kullanımı kolay ve esnek bir yapıya sahip olan Hydra, şifre saldırıları için özel olarak wordlist oluşturabilir veya hazır wordlistler kullanabilir, bu nedenle güvenlik testleri için yaygın bir tercih haline gelmiştir.

***

## **HYDRA KURULUMU**

```
sudo apt-get install hydra
```

<figure><img src="/files/wcZqQ2ijIDdETy964ogS" alt="" width="650"><figcaption></figcaption></figure>

### Github ile HYDRA Kurulumu

```
https://github.com/vanhauser-thc/thc-hydra
```

Adresinden repoyu klonlama işlemi yapılmalıdır.

<figure><img src="/files/ucprDNJeS3t7TAoCiJEC" alt="" width="650"><figcaption></figcaption></figure>

<figure><img src="/files/Uu96JwDjb8tNRS6LVont" alt="" width="650"><figcaption></figcaption></figure>

Linux makinesinde klonlama işlemi yapıldıktan sonra “apt-get install hydra” komutu ile yükleme işlemi yapılabilir.

<figure><img src="/files/PWLLA9KYgJTzUEQGGSMr" alt="" width="650"><figcaption></figcaption></figure>

***

## **HYDRA KULLANIMI**

hydra -l \<kullanıcı\_adı> -P \<parola\_listesi> \<hedef\_ip\_adresi> \<hedef\_protokol>

\<kullanıcı\_adı>: Hedef sistemde denemek istenilen kullanıcı adının belirtilmesi. \<parola\_listesi>: Hydra'nın kullanacağı parola listesini belirtilmesi. Bu, saldırı sırasında denenecek olan parolaların listesidir. \<hedef\_ip\_adresi>: Bruteforce saldırısı gerçekleştirmek istenilen hedefin IP adresini belirtilmesi. \<hedef\_protokol>: Saldırının gerçekleştirmek istenilen protokolün belirtilmesi. Örneğin, HTTP, FTP, SSH gibi protokoller kullanılabilir.

Örnek Komut :

```
hydra -l admin -P passwords.txt 192.168.0.100 ftp
```

Bu komut, admin kullanıcı adını kullanarak passwords.txt dosyasındaki parolaları kullanarak FTP protokolü üzerinde hedef IP adresi 192.168.0.100 olan sistemde bruteforce saldırısı gerçekleştirecektir.

***

## **HYDRA PARAMETRELERİ**

`-h` / `--help` : Yardım menüsünü gösterir. `-l` LOGIN : Hedef sistemde denenecek olan kullanıcı adını belirtir. `-L` FILE : Kullanıcı adı listesini belirtir. Birden çok kullanıcı adını içeren bir dosya kullanılabilir. `-p` PASS : Denenecek parolayı belirtir. `-P` FILE : Parola listesini belirtir. Birden çok parolayı içeren bir dosya kullanılabilir. `-f` FAIL : Hedef başarısız olduğunda programı durdurur. `-V` / `--verbose` : Ayrıntılı çıktı gösterir. `-S` : SSL bağlantısı gerçekleştirir. `-s` PORT : SSH portunu belirtir. Varsayılan olarak 22 kullanılır. `-e` ns : Enumerate, başarılı giriş yapan kullanıcı adlarını görüntüler. `-t` TASKS : Aynı anda çalıştırılacak görev sayısını belirtir. `-R` : Önceki iptal edilen/çöken oturumu geri yükler. `-I` : Mevcut bir geri yükleme dosyasını yok sayar. `-y` : Kaba kuvvette sembollerin kullanımının devre dışı bırakılması.

***

## **HYDRA HANGİ PROTOKOLLERİ DESTEKLER**

Hydra'nın desteklediği protokoller: 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 and v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC and XMPP.

***

## **HYDRA İLE İLGİLİ MAKİNE ÇÖZÜM ÖRNEĞİ**

Makine : TryHackMe / Hydra

<figure><img src="/files/yEfGBsSkADyJobvVtED4" alt="" width="650"><figcaption></figcaption></figure>

İlk olarak bizden Molly'nin web şifresini **hydra** kullanarak kırmamız isteniyor.

<figure><img src="/files/yTt8VcKa1fpgK377n5L5" alt="" width="650"><figcaption></figcaption></figure>

```
hydra -l molly -P /root/Desktop/rockyou.txt 10.10.136.244 http-post-form "/login:username=^USER^&password=^PASS^:F=incorrect" -V
```

Burada -l parametresi ile kullanıcı adı -P parametresi ile wordlist kullanılmıştır. Daha sonra hedef IP adresi gösterilmiştir ve http-post-form formatında bir arama isteğinde bulunmuştur. -V parametresi ile de çıktıları göstermiştir.

<figure><img src="/files/691nVJ2oEkYyeyyTqBKo" alt="" width="650"><figcaption></figcaption></figure>

<figure><img src="/files/KsyWok4O5nU5PRIROJc7" alt="" width="650"><figcaption></figcaption></figure>

<figure><img src="/files/rThGETRk9TKluUZz1rOX" alt="" width="650"><figcaption></figcaption></figure>

Hydra ile kaba kuvvet saldırısı yapılmış olup şifrenin de "sunshine" olduğu belirlenmiştir.

Sisteme giriş yaptıktan sonra flag da bulunmuştur.

<figure><img src="/files/p3UCTSZnAVnSdwLbvtJc" alt="" width="650"><figcaption></figcaption></figure>

İkinci istenilen ise Molly'nin SSH şifresinin ne olduğudur.

<figure><img src="/files/uZtVA74l0YopXerTB2ax" alt="" width="650"><figcaption></figcaption></figure>

<figure><img src="/files/W9sJ14sF2HF7T9f9ub61" alt="" width="650"><figcaption></figcaption></figure>

Bu sefer **hydra** aracı ssh girişi için kullanılmıştır. Yapılan kaba kuvvet saldırısı sonucu kullanıcının ssh şifresi öğrenilmiştir.

<figure><img src="/files/7m8wVoy7l1wpWaJk0GP9" alt="" width="650"><figcaption></figcaption></figure>

Sonra ssh girişi yapılmıştır.

<figure><img src="/files/dM667mFv8Q4fs3VuWNuA" alt="" width="650"><figcaption></figcaption></figure>

SSH ile giriş yaptıktan sonra flag dosyasını okuduktan sonra flag'a ulaşılmıştır.

{% embed url="<https://github.com/euslu11>" fullWidth="false" %}
Bu yazı Emirhan USLU tarafından hazırlanmıştır.
{% endembed %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.yavuzlar.org/araclar/hydra.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
