![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 29.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Tak ot przyszło mi do głowy jak zrobić ( napisać ) mały skrypcik, który zliczał by błędne próby logowania do serwisu. Po przekroczeniu 3 błędnych logowań, skrypt usuwał by użytkownika z systemu, lub przynajmniej blokował by jego konto.
Ktoś wie jak to zrobic? |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 224 Pomógł: 40 Dołączył: 6.07.2004 Skąd: Wuppertal Ostrzeżenie: (0%) ![]() ![]() |
do tabeli z użytkownikami dodajesz pole nieudane_logowania. Przy kazdym nieudanym logowaniu zwiększasz jego wartość o 1. po kazdym poprawnym zalogowaniu ustawiasz na 0.
mam tylko pytanie... jesli ktos zna Twoj login, i specjalnie wpisze 3 razy złe hasło, to spowoduje usunięcie Twojego konta... moze byc problematyczny ten system. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 132 Pomógł: 0 Dołączył: 24.09.2003 Skąd: Giżycko / Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Tak, zdecydowanie lepiej abyś konto zablokował zamiast od razu usuwać z bazy
![]() Ten post edytował Denver 9.09.2006, 13:26:52 -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 0 Dołączył: 28.09.2004 Ostrzeżenie: (0%) ![]() ![]() |
hehe
login: admin haslo: qwe login: admin haslo: asd login: admin: haslo: zxc Twoje konto zostało usuniete. i co pozniej? |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Jeszcze lepiej:
login: admin, hasło: qwerty -> zalogowany. Najsłabszym ogniwem w najróżniejszych systemach jest człowiek. W sumie taki OT, ale nie mogłem się powstrzymać ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
No dobra, nastepny post nie wnoszacy nic do tematu zostanie "nagrodzony" warnem (nie piszcie juz ze da sie usunac w ten sposob czyjes konto -- juz to wiemy)
-------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 29.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Ok. wszystko fajnie ... ale tym razem nie chodzi o jakąś byle baze, w tej bazie mają być przechowywane naprawde b. wazne rzeczy, a dostęp do niej będą mieć tylko 3 osoby, ktore nie sa dziecmi i nie w glowie im glupie zarty .... a usuniecie uzytkownika w tym wypadku moze nie jest dobrym pomyslaem,a le zablokowanie jego konta jak najbardziej ...
|
|
|
-Wieviór- |
![]()
Post
#8
|
Goście ![]() |
Tu nie chodzi o to kto będzie miał dostęp. Ale jeżeli ktoś będzie znał twój login i stronę do wpisywania loginu i hasła, to będzie mógł usunąć Ci konto.
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Okay, usuwanie konta przez osoby trzecie już było.
@ActivePlayer opisał sposób z dodatkowym polem nieudane_logowania. Ewentualnie dodaj jeszcze pole konto_zablokowane i zmień je na true, po 3 błędnych próbach. Jednak blokada taka powinna być niemożliwa dla kont administratorów. Załóżmy, że system ma tylko jednego administratora, albo jedno konto z kompletem praw. Zostanie zablokowane i co wtedy? Trzeba grzebać w bazie, a w dobrym systemie należy tego uniknąć. Ten post edytował LBO 10.09.2006, 08:21:33 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 29.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
OK wiec chyba nastawie sie tylko na blokowanie konta. Dzieki za odpowiedzi.
pozdrawiam |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 132 Pomógł: 0 Dołączył: 24.09.2003 Skąd: Giżycko / Wrocław Ostrzeżenie: (0%) ![]() ![]() |
@LBO:
Myślę, że pole konto_zablokowane nie jest w tym wypadku konieczne. Wystarczy sprawdzać ilość nieudanych prób logowania z pola nieudane_logowania. Takie rozwiązanie dopuszcza też np. ustawienie ilości nieudanych logowań gdzieś w pliku konfiguracyjnym. -------------------- |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 0 Dołączył: 4.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
Jednak blokada taka powinna być niemożliwa dla kont administratorów. Załóżmy, że system ma tylko jednego administratora, albo jedno konto z kompletem praw. Zostanie zablokowane i co wtedy? Trzeba grzebać w bazie, a w dobrym systemie należy tego uniknąć. ...ale wtedy najważniejsze konto nie jest odporne na brute force co też nie jest dobrym rozwiązaniem. Jeśli koniecznie chciałby uniknąć blokady konta administratora to proponowałbym wprowadzenie jakiegoś przedziału czasu po którym nieudane próby liczone są od 0. Np. jeśli wystąpiły trzy nieudane próby wciągu 2 minut - blokada konta bo istnieje prawdopodobieństwo, ze dobija się jakiś skrypt. Jeśli jednak próby wystąpiły w większych odstępach czasu - brak reakcji. Takie rozwiązanie uczyni brute force dość 'mało' wydajnym ![]() ...aż sobie policzyłem: Login: admin (stały) Pass: od 6 do 7 znaków z przedziału [qazwsxedcrfvtgbyhnujmiklop1234567890! @.?#] Możliwości: 236.028.364.992 Przy dopuszczalnych dwóch hasłach na dwie minuty da to 236.028.364.992 minut = 3.933.806.083 godz. = 163.908.586,8 dni = 449.064,6 lat Chyba się nigdzie nie walnąłem w obliczeniach... ![]() -------------------- Załóż konto na dropbox.
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 6.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Ja bym jeszcze dodal ze login do systemu a login widoczny w systemie byly rozne. Nie znajac loginu ciezko zablokowac konto.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 23:22 |