Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 516 Pomógł: 63 Dołączył: 27.08.2012 Ostrzeżenie: (0%)
|
Witam. Mam pytanie czysto teoretyczne tak więc nie będę wklejał niepotrzebnie kodu.
Przeleciałem już kilkanascie stronn na tym forum w poszukiwaniu pomocy, również w googlasie nie jest łatwo odzszukac jednoznaczej odpowiedzi na mój problem. Muszę zrobić jak najbezpieczniejsze logowanie. Robie duży projekt, w którym w gre już wchodzą pieniądze na kontach użytkowników. Dlatego tez mam pytanie odnośnie logowania, najpierw zaczne od tego co zrobiłem. w moim formularzu, mozna logowac sie poprzez email/login i hasło -najpierw pobieram dane i nakładam na nie "htmlspecialchar" -sprawdzam później poprzez wyrażenia regularne w php, czy oba pola posiadają dozwolone znaki. Dla loginu przewiduje tylko litery, cyfry i znaki używane w mailach. Dla hasła tylko cyfry i litery. - jeśli jest ok, sprawdzam, czy ktoś taki istnieje - po loginie albo emailu (poprzez funkcje sprawdzam kto co podał do logowania) - sprawdzam tylko czy istnieje takie ID w bazie i czy konto jest aktywne, jeśli tak pobieram tylko ID. - jeśli istnieje, tworze sesje i narazie to wszystko co do trzech pierwszy punktów, chce jeszcze dodać dla hasła znaki specjalne dla zwiększenia siły i wymóg w rejestracji do stosowania znaków specjalnych. mam dodaną również blokadę logowania dla IP na 15min jeśli w ciagu 5minut logował się bez powodzenia 20razy. Hasła są pięknie kodowane w sh1 i solone tak, że nie ma bata na złamanie. do sesji dodaje tylko ID użytkownika na zasadzie $_SESSION['identyfikator'] = $row['id']. No a póżniej sprawdzam czy istnieje taka sesja na odpowiednich stronach no i teraz odnośnie tworzenia sesji. Tutaj jest mój dylemat. Nie mogę sobie pozwolić na ataki, gdzie ktoś mógłby wejść na czyjeś konto i np zażądać wypłaty jego pieniędzy. Naczytałem się, że najbezpieczniej jest użyć do tego ciastek, gdzie do takiego ciastka wrzucam np te ID z sesji i sprawdzam za każdym razem czy sesja i ciastko są takie same. Wolałbym jednak nie bawić się w ciastka ze względu na to, że każdy ma prawo je blokować w przeglądarce. Wytłumaczcie mi jeszcze, jeśli zna ktoś mój identyfikator sesji czyli dla $_SESSION['identyfikator'] jest nią string "identyfikator", to co wtedy ? jakiś przykład ? Jak ktoś ma z was dobre doświadczenie odnośnie bezpieczeństwa sesji, prosze o pomoc merytoryczną jak najlepiej się zabezpieczyć. Tylko prosze prostym językiem i łopatologicznie bo jeszcze nigdy takich zabezpieczeń dla sesji nie robiłem. Ten post edytował gitbejbe 4.06.2013, 06:41:00 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 516 Pomógł: 63 Dołączył: 27.08.2012 Ostrzeżenie: (0%)
|
@cykcykacz
Dzięki za linki. Rozwiązanie jest tak proste, że dziwie się, że na to nie wpadłem : ) @Sephirus to, ze ludzie nie blokują ciastek to rzecz tak pewna jak to, że Tusk to złodziej (;p), ale jednak jest też % osób, które znają sie na kompach troche bardziej i czasami kombinują. Są tez tacy co korzystają z internetu w pracy, gdzie firmowe komputery zazwyczaj są w różny sposób zabezpieczane - akurat ciastek to raczej mało kiedy tyczy ale kto tam wie... Zrobię na zasadzie metody, którą podlinkował @@cykcykacz Zrobie ciastko przy logowaniu i odrazu sprawdzę czy istnieje, jeśli nie to przekierowanie do strony z komunikatem, że przeglądarka blokuje ciastka. Raczej nie wyczerpałem jeszcze moich pytań odnośnie tego co chce ogólnie zrobić ze swoją stroną, tak więc pewnie poruszę jeszcze pare wątków. Tymczasem ten można zamknąć. Dzięki za pomoc : ) |
|
|
|
gitbejbe [PHP]bezpieczne logowanie 4.06.2013, 06:40:24
Damonsson Jest milion artykułów o bezpieczeństwie sesji. Nik... 4.06.2013, 07:31:49
Sephirus 1. Logowanie - email i hasło - dla bezpieczeństwa ... 4.06.2013, 08:02:45
gitbejbe @Sephirus
I tego właśnie potrzebowałem, dzięki za... 4.06.2013, 08:16:54
Sephirus Cytatco do ciastka i blokady, to zamiast może soli... 4.06.2013, 09:29:31
gitbejbe super : )
mógłbyś podpowiedzieć jeszcze czy taki ... 4.06.2013, 17:56:33
ber32 Witam. Funkcja spr_ip() sama w sobie jest niebezpi... 4.06.2013, 22:52:04
gitbejbe właśnie, jak to jest z tym IP ? ten skrypt może by... 5.06.2013, 05:16:51
Sephirus Zamotałem się z tym Twoimi pytaniami ale po kolei ... 5.06.2013, 07:36:05
gitbejbe wylogowanie właśnie u mnie wyglada tak :
session... 5.06.2013, 09:51:03
mlawnik Evercookie może pomoc. 6.06.2013, 09:37:47
gitbejbe Evercookie to zbędne rozwiązanie do ciastek, które... 6.06.2013, 11:29:35
kosmaty_zab Ja to zrobiłem tak (na podstawie pracy użytkownikó... 7.06.2013, 01:05:22
gitbejbe @kosmaty_zab, dałem plusa bo się trochę napracował... 7.06.2013, 06:07:29
cykcykacz Jeżeli chodzi o sprawdzanie czy przeglądarka ma wł... 7.06.2013, 07:24:34
Sephirus Co do pytania
Odpowiem tak:
W obecnym czasie no... 7.06.2013, 07:38:04 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 23:32 |