Bir tuz eklemek için önerilir ki nedeni basittir. Bu "parmak izi" oluştururken Genellikle, - sınırlı bir veri kümesi olan veri sadece tek öğe, kullanıyorsanız, o zaman daha kolay bir dış hacker bu oluşturmak ve oturumu kaçırmak için yapar.
Saldırgan "parmak izi" ve kullanıcı ajan hem de varsa Yukarıdaki örnekte, evet, sonra da oturumu kaçırmak mümkün olacak.
Bir tuz ekleme sadece) onlar bir bilgi parçası ama varsa ", sonra bilgi son parçası işe yaramaz hale edilir bir durum, zor bir saldırganın parmak izi oluşturmak için yapar
Ben Powered içinde, örneğin, (I üzerinde çalışmak için kullanılan bir proje) (temelde parmak izi gibi aynı) oturum kimliği karma Aşağıdaki kod ile oluşturulan biraz daha bir şeyler eklemek öneririm.
define('SESSION_IDHASH', md5($_SERVER['HTTP_USER_AGENT'] . $this->fetch_substr_ip($registry->alt_ip))); // this should *never* change during a session
Ayrıca, bir oturum karma kullanılarak oluşturulur
md5(uniqid(microtime(), true));
Oturumu belirlemeye çalışırken Bunlar hem kontrol edilir
Yani, oturumu kaçırmak için, kişi aşağıdaki bilmeniz gerekir
- Oturumu oluşturuldu sunucuda süresi (tam)
- Kullanıcıların Tarayıcı aracısı dizesi
- Kullanıcının IP adresi
Onlar da bunu yapabilmek için IP adresini (ya da en azından ilk 2/3 sekizli) parodi gerekir.
Onlar yukarıdaki bilgileri almak başardınız bir noktada aslında iseniz, o zaman muhtemelen sadece oturum gaspına başka yollarla saldırı edebilmek olasıdır.
vBulletin aslında kendi başına bir "tuz" kullanmak istemiyorum, ama, sizin yukarıdaki örnekte, tuz sadece entropi sınırlı bir miktarda ekleyerek, bu mümkün olduğunca entropi bulmak her zaman en iyisidir.
Örneğin, ben şu anda python yazıyorum bir şey, ben XSRF koruma ile kullanım için bir karma oluşturmak. Aşağıdaki ben ne kullanın.
self.key = sha1(
self.user.username +
self.user.password +
settings.SECRET_KEY +
strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime())
).hexdigest()
Hangi kullanıcının kullanıcı adı ve parola, şimdiki zaman, ve bu oluşturmak için önceden ayarlanmış bir tuz alır. Bir saldırgan nedeniyle tuz üretmek için bu zor olurdu, ve zaman (gerçi, bu sadece kullanılan kez zamanla değişikliği gerçeği ile güvenli yapılmış olduğunu unutmayın, bir başkasına için çok almak olmaz değişiyor değilse belirli bir kullanıcı için bu crack)