19 Ekim 2010 Salı

HE:WA-C5 Attacking Tokens-3



Capture / Replay

Başka bir kullanıcının token'ını olduğu gibi "replay" edelim. Sonuç olumlu ise artık o kullanıcıyız. Bu saldırıyı yapabilmek için token'ı elde etmek gerek, bunun için de birkaç klasik yol var: "eavesdropping", MitM (Main in the Middle), sosyal mühendislik hileleri.

Session Fixation

Saldırgan, kurbanın sessionID'sini elde etmeye çalışmak yerine kurban için bir sessionID belirler.

  • Saldırgan, açıklık barındıran siteye login olarak geçerli bir sessionID alır; bunu kurbanı tuzağa düşürmede kullanacaktır.
  • Sonra kurbanı bu sessionID ile uygulamaya girmek için "ikna" eder (en basit yolu, sorgu stringi içinde sessionID'yi de içeren bir linki kurbana mail yoluyla göndermek olabilir)
  • Kurban bir kere siteye login olduktan sonra saldırgan aynı sessionID'yi replay ederek kurbanın oturumuyla sitededir artık.
Zorlukları:

  • Saldırgan, kurbanı hazırladığı link ile sisteme giriş yapma konusunda ikna etmeli. Zaten bunu başarırsa kurbana daha kötü şeyler de yapabilir.
  • Saldırgan, kullanıcı ile eş zamanlı olarak, kullanıcı sistemden çıkmadan yada oturumu expire olmadan sisteme girmek durumunda.
Önlemi basit:

  • Her başarılı login için sistem yeni bir sessionID üretir.
  • Ve uygulamanın login yeteneği, kullanıcının ürettiği / istemciden gelen sessionID'lerin kullanımına izin vermez ( Bu demektir ki test ederken login sonrası yeni bir ID üretilip üretilmediği ve ürettiğimiz ID'ler ile sisteme girip giremediğimiz kontrol edilir).
Ve mutlaka time-out mekanizmasının sunucu tarafında olması ve kesin bir değer içermeli.

Hiç yorum yok:

Yorum Gönder

Web Uygulama Sızma Testleri İçin Kontrol Listeleri - V

Checklist for Web App Pentesting - V 6. Veri Denetimi (Data Validation) Testleri 6.1 Girdi Denetimi Bütün girdiler denetlenmelidir....