Cisco Type 5 Parolalarının John The Ripper Kullanılarak Kırılması

BGA Security Wiki sitesinden
Şuraya atla: kullan, ara

Cisco ağ cihazlarında iki tip parola vardır. Bunlar type 7 ve type 5 parola tipleridir. İki parola tipine ait örnekler aşağıdaki tabloda verilmiştir.

enable secret 5 $1$0a4m$jsbSzU.vytsZFISdJtbQI4
enable password 7 062E0A1B76411F2D5C

Tabloda verilen örnekte de görüldüğü üzere type 7 kolayca “çözülebilir” bir algoritma kullanmaktadır. İnternet üzerinden edinilecek çeşitli araçlarla type 7 parolaları rahatlıkla çözülebilir. (http://ibeast.com/tools/CiscoPassword/index.asp)

Type 5 (enable secret), parolayı md5+salt kullanarak saklamaktadır. Örnek olarak FreeBSD parola tipi alınmıştır. Dolayısıyla JTR’in Cisco parolalarını kırması için herhangi bir ek yama gerektirmez.

Amaç:

Aşağıda senaryoda verilen örnek olarak ele aldığımız Cisco type 5 parolasını JTR aracını kullanarak kırma.

Araç:

  • JTR(John The Ripper)

Lab Senaryosu:

Örnek Cisco type 5 parolası: $1$WhZT$YYEI3f0wwWJGAXtAayK/Q.

Bu parolayı “cisco_type5” adlı bir dosyaya ekleyerek aşağıdaki komutla kırma işlemi başlatılabilir.

# ./john cisco_type5
Loaded 1 password hash (FreeBSD MD5 [32/32])
test              ?
guesses: 1  time: 0:00:00:02 100.00% (2) (ETA: Thu Nov 25 03:40:51 2010)  c/s: 7116  trying: test

Burada seçilen parola basit olduğu için kolaylıkla kırılmıştır. Parolanın daha zor olduğu durumlarda JTR’in ileri seviye özellikleri kullanılması gerekebilir.

Örneğin kırılmak istenen parolanın JTR’in varsayılan sözlük listesinde olmadığını varsayalım. Bu durumda ya kaba kuvvet(brute force) denemesi ya da sözlük saldırısı denemesi gerçekleştirilebilir. Kaba kuvvet parola saldırısı çok uzun süreceği için sözlük yöntemi tercih edilecektir. JTR’a sözlük kullanmasını -w:dosya_adi parametresiyle aktarabiliriz.

# ./john
-w:son_wordlist_turkce cisco_type5_test
Loaded 1 password hash (FreeBSD MD5 [32/32])
guesses: 0  time: 0:00:00:04 3.48% (ETA: Thu Nov 25 03:53:43 2010)  c/s: 7353  trying: ow8 deneme    	(bga)

Çıktıdan görüleceği gibi JTR’in md5+salt değeri kullanılan parola formatlarına karşı hızı çok yüksek değildir(saniyede ~7500 deneme). Bunun temel nedeni sözlük listesindeki her bir satırı alıp öncelikle hash oluşturup sonra varolan hash değeriyle karşılaştırmasıdır.

Oysa burada rainbow table kullanabilseydi, bu işlem sadece birkaç saniye sürecekti. Fakat rainbowtable’ı kendimiz oluşturmamız gerekiyor. Neden? Zira internet üzerinde bizim parolamız için kullanılan tuz değerinin aynısının kullanıldığı rainbowtable bulmak pratik olarak imkansızdır.