John The Ripper Kullanarak Yeni Nesil Linux Parolalarını Kırma

Linux dağıtımlarında sistemdeki kullanıcıların  parolaları /etc/shadow dosyasında hash+salt şeklinde saklanır. Salt(tuz) her seferinde değişken olarak atanan bir değerdir, bundan dolayı aynı parolayı iki kere girildiğinde hash değerleri farklı çıkacaktır.

Linux sistemlerin parola formatı incelendiğinde ilk iki $ arasındaki değer hangi şifreleme/hash algoritmasının kullanıldığını belirtir. Linux parola güvenliğiyle ilgili detay bilgi için

3-4 sene öncesine kadar çoğu Linux dağıtımında parolaları hashli saklamak için MD5 kullanılırdı. Günümüzdeki Linux dağıtımları ise SHA512 ($6$) tercih etmektedir. MD5 kullanılmış hashli parolaları JohnTheRipper aracıyla kırmak mümkünken SHA512 kullanılarak hashlenmis parolaları son sürüm JTR ile kırmak mümkün değil.

JTR kullanarak Linux parolalarının güvenliği denendiğinde aşağıdakine benzer hata alınacaktır.
“No password hashes loaded”

Aşağıdaki adımlar günümüz Linuz dağıtımlarının parolalarını JTR ile kırmak için yapılması gerekenleri içermektedir:

root@seclab:~/test# wget http://www.openwall.com/john/g/john-1.7.5.tar.gz

root@seclab:~/test# tar zxvf john-1.7.5.tar.gz
root@seclab:~/test# cd john-1.7.5

PATCH dosyası http://www.openwall.com/lists/john-users/2009/09/02/3 adresinden indirilerek yeni sürüme uyarlanmalıdır.

root@seclab:~/test/john-1.7.5# patch -p1 -i patch

patching file src/Makefile
patching file src/crypt_fmt.c
patching file src/john.c
Hunk #2 succeeded at 67 (offset 2 lines).
root@seclab:~/test/john-1.7.5/src# make linux-x86-any
# cd ../run/
root@seclab:~/test/john-1.7.5/run# ls
all.chr  alnum.chr  alpha.chr  digits.chr  john  john.conf  lanman.chr  mailer  password.lst  unafs  unique  unshadow
root@seclab:~/test/john-1.7.5/run# ./john /etc/shadow

Loaded 3 password hashes with 3 different salts (generic crypt(3) [?/32])
toor             (root)