kkuubbaa88
14.02.2012, 15:00:04
Witam
Przerabiam sobie skrypt logowania i zastanawiam się czy kolejne zabezpieczenie ma jakiś sens:
Chciałbym podczas logowania wygenerować ciąg losowych znaków składających się z liter i cyfr, a następnie dopisał w polu dla zalogowanego użytkownika. Następnie podczas próby zmian w bazie przez zalogowanego użytkownika wartość z sesji sprawdzana byłaby z wartością zapisaną w bazie i przy poprawnym porównaniu dane w bazie byłyby zmieniane.
Czy ma to jakiś sens ? przed czym tam na prawdę chroni takie zabezpieczenie ? czy można jeszcze jakoś wykorzystać ten generowany ciąg przy zabezpieczeniach ?
pozdrawiam
Kuba
Bateria
14.02.2012, 15:04:43
Napewno zwiększyło by to w jakimś stopniu bezpieczeństwo skryptu, ale moim zdaniem nie ma potrzeby stosowania takiego mechanizmu.
Majkelo23
14.02.2012, 15:20:48
No w sumie możesz coś takiego zrobić. Dodać gdzieś w bazie pole session_id i dodać gdzieś na początku funkcję generującą X losowych znaków i aktualizowanie tego w bazie. Zawsze możesz do linku dorzucać sesje, jeśli sesja byłaby błędna - możesz usera o tym poinformować i ew. go wylogować, jeśli by coś kombinował w linku. Takie coś jest w phpbb2.
kkuubbaa88
15.02.2012, 09:24:43
Pytanie właśnie przed czym to może bronić ? jakiego typu atak czyteż próbę oszustwa zniweluje ? bo tak na prawdę nikt kto nie jest zalogowany nie może niczego zmienić, a i tak przy sesji sprawdzane jest czy sesja została stworzona przeze mnie czy też ktoś wpadł mi z gotową...
gothye
15.02.2012, 09:28:53
poczytaj o CSRF
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.