W moim serwisie używam:
-SSL
-ochrony przed SQL injenction - dając np. $query="select * from artykuly whereid=\"'.$_GET['id']."\"";
CZY WYSTARCZY ZAPYTANIE PRZEPUŚCIEĆ PRZEZ mysql_escape_string()
ALE ZAPYTANIA KIERUJE PRZEZ MYSQL_QUERY - więc, z tego co jest napisane w przyklejonym temacie, przez mysql_query nie jest możliwe wykonanie dwóch zapytaniań jednocześnie - więc czy warto, żebym tą ochronę stosował w tym przypadku i dlaczego?
-addslashes przy zapisie do bazy, w insertach
-stripslashes + htmlentites przy wyśw. wyników z bazy
-do wszystkich stron dostęp jest przez index.php?strona=... i po udanym zalogowaniu - sprawdzanie loginu i hasła w bazie, ustawiana jest zmienna sesyjna, która zawiera login.
Potencjalny włamywacz, jeśli utworzy swoją stronke i rozpocznie sesje w niej, albo jakoś przejmie ID sesji zalogowanego użytkownika i przedostanie się do mojego index.php np. przez Header, nie powinien się włamać, bo nie wie, że login przechowuję w sesji w zmiennej MC_login.
Czy coś jeszcze potrzebne mi do zabezpieczenia seriwsu?
Słyszałem coś o kontroli IP - czyli zapisie IP+ID sesji do bazy na tymczasowy okres, żeby zobaczyć, czy po zalogowaniu się użytkownika, nikt inny w tym samym czasie, kto np przejął hasło i login nie próbuje się zalogować. Ale przecież jak ktoś te dane przejmie, to może je wykorzystać kiedy chce.. Ponadto jeden użytkownik musi móc logować się z różnych IP. I przewiduję grupy użytkowników pod wspólnym IP.....
Poproszę teraz o przykłady luk w moim rozwiązaniu i podary co jeszcze wprowadzić, i może kawałki kodu, dzięki
