Ataki na logowanie:
- Można logować się do systemu poprzez podanie konta/hasła w czystej postaci, ale to ma swoje wady - podatność na in-the-middle attack tzn. można się podszyć pod dane konto stosując "lewy" serwer DNS (aby temu zapobiec często używa się OpenDNS), wszystko widać w czasie transmisji i w bazie (w kolumnach gdzie się przechowujekont/hasło)
- Można hashować hasło po stronie klienta (biblioteka jsSHA2.js na stronie http://anmar.eu.org/,
<form onsubmit="pwField.value = b64_sha256(pwField.value);">
Co to daje? Brak wiedzy o haśle, a nawet jego długości. Wady - musi być włączony JS w przeglądrce, atak słownikowy, atak replay atack (wystarczy podstawić hash zamiast hasła) dlatego podczas transmisji stosuje się tunel SSL.
- Można do tego dodać dane specyficzne dla użytkownika np.: <form onsubmit="pwField.value = b64_hmac_sha256(userId.value, pwField.value);">
- Wykorzystanie schematu pytanie-odpowiedź (challenge-response) zwanej też CHAP (http://pajhome.org.uk/crypt/md5/auth.html implementacja MD5 i SHA1) - hasło po stronie klienta jest hashowane dodatkowo przy pomocy informacji przysłanej przez serwer
Brak komentarzy:
Prześlij komentarz