Rainbow Table Nedir ?
Bu saldırı türünü anlamamız için önce Rainbow Table'in ne olduğunu az da olsa bilmemiz gerekir.Rainbow Table kısaca bir kullanıcının parola oluşturduğunu varsayalım. Bu parola şifrelenerek veritabanına aktarılır. Daha sonra kullanıcı yeni bir parola girdiğinde önceki kaydedilen veritabanında şifrelenmiş olan parola ile karşılaştırılır. Değerler eşleşirse kullanıcının kimliği doğrulanır. Kısaca gökkuşağı tablosu, parola karmasını kırarak kimlik doğrulama elde etmek için kullanılan bir veritabanı diyebiliriz.
Rainbow Table Attack Nasıl Gerçekleşir ?
Saldıran tarafın kendilerinde bulunan her dizenin karma fonksiyonunu hesaplayarak, karma değerini hesaplayarak ve ardından her adımda bunu bilgisayardakiyle karşılaştırarak çalışan kaba kuvvet saldırısının aksine. Rainbow Table Attack, mevcut geniş dizilerin karmalarını hesaplayarak saldırır. Böylece kaba kuvvet saldırısında zaman kaybetmez. Bu saldırı yapılırken iki aşama vardır. Tablo Oluşturma ve Şifrenin Kırılmasıdır.
Tablo Oluşturma
Bu aşamada bir dizenin karması alınır ve daha sonra tekrar tekrar azaltılan yeni bir dize oluşturmak için azaltılır. Örneğin, ilk 8 karakterde MD5 hash fonksiyonunu kullanarak en yaygın şifre olan 12345678'den oluşan bir tablo varsayalım. Sadece ilk 8 karakteri alarak hash'i azaltıp daha sonra yeniden hash yapılır. Çıktı zincirinde yeterli karma elde edilene kadar tekrarlanır. Yeterli sayıda zincir elde edildikten sonra bu zinciler bir masaya saklanır.
Şifrenin Kırılması
Şifre veritabanında var olup olmadığı kontrol edilir. Eğer var ise zincirin başlangıcına gider ve bir eşleşme olana kadar karma işlemine başlar. Eşleşme elde edildiği anda süreç durdurulur ve kimlik doğrulaması kırılır.
Fotoğraftada da görüldüğü gibi şifre her adımda 1 sayı/harf azaltılarak devam ediyor.
Rainbow Table Attack'ın Avantajları Nelerdir
1) Kaba kuvvet olmadan karma işlevinin gerçekleştirilmesi burada sorun değildir
2) Tam şifre dizisinin bilinmesine gerek yoktur. Karma eşleşirse dizenin parolanın kendisi olmaması önemli değildir. Kimlik doğrulaması yapılacaktır.
Rainbow Masa Saldırılarına Karşı Nasıl Önlem Alınabilir
Rainbow Table Attacks'a karşı , karma işlevine düz metinle birlikte aktarılan rastgele bir veri olan tuz teknikleri kullanılarak kolayca önlenebilir. Bu teknik, her şifrenin benzersiz bir hash değerine sahip olmasını sağlar ve böylece birden fazla metnin aynı hash değerine sahip olabilmesi prensibiyle çalışan gökkuşağı tablo saldırısının önüne geçilir.