![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 39 Dołączył: 7.04.2008 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
zalogować może się tylko jeden użytkownik i tylko z jednym hasłem. bez możliwości zmiany tych parametrów (ja je ustawiam raz na zawsze). Nie chcę więc tworzyć osobnego pliku z tymi parametrami (szyfrowanymi lub nie).
Pytanie brzmi, czy bezpiecznie jest zrobić taki skrypt?
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 39 Dołączył: 7.04.2008 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
wiem, że "trochę". bo skoro ktoś już się pomęczy i JAKIMŚ CUDEM dostanie ten mój kod PHP w swoje ręce, to bez problemu odkoduje sobie zakodowany nick za pomocą jakiegoś dekodera online albo własnego. Skoro więc to możliwe (zakładając że jakoś dostanie mój PHP), to po co mam sobie utrudniać sprawę jeśli itak nie zwiększa to bezpieczeństwa.
Pytanie z tematu nadal więc pozostaje |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Bo jeżeli hasło jest bezpieczne (czyt.: długie, zawiera litery (duże i małe), cyfry, znaki) to "złamanie" go brute-forcem może potrwać na tyle długo, że potencialny "włamywacz" zrezygnuje. Ale z drugiej strony - mając dostęp do pliku, będzie mieć prawdopodobnie dostęp do zapisu i sobie poprostu zmieni to hasło (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 39 Dołączył: 7.04.2008 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
nadal nie wiem, czy takie rozwiązanie (to z tematu) jest bezpieczne. już nie chodzi mi o to co jest bezpieczniejsze, ale jedynie o to czy to konkretnie jest bezpieczne. Taka sytuacja, ze ktoś dostanie kod php jest dosyć skrajna i właściwie łamie wszelkie możliwości zabezpieczania. Drugą możliwością jaką dla siebie widzę, jest umieszczenie hasła i loginu w osobnym skrypcie o poziom wyżej niż public_html. ale właśnie takiego umieszczania chciałem uniknąć.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 657 Pomógł: 125 Dołączył: 29.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
nazwę usera możesz podać bez haszowania, ale pod warunkiem, że masz zahaszowane inne dane w sesji, które udowodnią własność konta.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 39 Dołączył: 7.04.2008 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
z tej rozmowy wnioskuję:
to rozwiązanie JEST bezpieczne, ale z szyfrowaniem (np algorytmem MD5). Dziękuję i pozdrawiam, problem rozwiązany... |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 657 Pomógł: 125 Dołączył: 29.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
MD5 nie szyfruje, tylko haszuje.
MD5 nie można odszyfrować. Ten post edytował radex_p 23.05.2008, 10:36:21 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 39 Dołączył: 7.04.2008 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
no to świetnie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) czyli właściwie mając nawet ten ciąg:
który jest zahaszowanym hasłem, ewentualnemu cracker'owi nie uda się szybko odgadnąć że to "jasio". w skrypcie "zalogowaność" sprawdzam więc tak:
Niema w moim przypadku potrzeby zapisu danych gdziekolwiek oprócz wnętrza skryptu, a nawet tam "jasio" (czyli hasło) jest haszowany. Jak widać w kodzie powyżej "kim_jestem" nie jest loginem. Jest hasłem. Zrobiłem tak dlatego, ze login wyskakiwał w formularzu logowania po kliknięciu w puste pole (podpowiedź przeglądarki), z hasłem się tak nie dzieje. Teraz już jest bezpiecznie (md5 hasła służy do weryfikacji bycia zalogowanym). Poprawcie mnie jeśli popełniam jakiś ideologiczny błąd typu "nigdy nie weryfikuj za pomocą hasła" |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
zalogować może się tylko jeden użytkownik i tylko z jednym hasłem. bez możliwości zmiany tych parametrów (ja je ustawiam raz na zawsze). Nie chcę więc tworzyć osobnego pliku z tymi parametrami (szyfrowanymi lub nie). Pytanie brzmi, czy bezpiecznie jest zrobić taki skrypt?
zrobiles male bledy... </a href=\"wyloguj.php\">
<a href=\"wyloguj.php\"> </a href=\"wyloguj.php\"> Ten post edytował pyro 23.05.2008, 14:28:18 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 657 Pomógł: 125 Dołączył: 29.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
jest ok. Ja generalnie robię to podobnie:
jedna sesja z nazwą usera i druga sesja ze specjalnie spreparowanym tekstem, który udowadnia tożsamość. Tym tekstem może być właśnie hasło. |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 39 Dołączył: 7.04.2008 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
to ja może podam całość jaką teraz mam, żeby nie było wątpliwości czemu sprawdzam tylko jedną wartość:
to jest formularz logowania HTML (plik index.php):
Taki skrypt sprawdza formularz logowania (jest to plik sprawdz.php)
a tak wygląda dowolna strona dostępna tylko po zalogowaniu (startowa to zalogowany.php):
ostatni plik który wyloguje użytkownika (logout.php):
"a co z hasłem?" jak widać w pliku zalogowany.php sprawdzam tylko jedną wartośc. a to dlatego, że jest ona tworzona w pliku sprawdz.php jedynie kiedy zgadza się i login i hasło (narazie są jednakowe). co do tego, że niepotrzenie sprawdzam, czy $_SESSION['kim_jestem'] w ogóle jest zdefiniowana, to czytałem gdzies, ze PHP inaczej zareaguje w przypadku jedynie sprawdzania wartości, a inaczej w przypadku sprawdzania i istnienia i wartości. Nie pamiętam tego, ale coś mi się kojarzy z jakimś E_NOTICE. teraz już widac całość tej strony mojej. Nigdzie niema hasła odkrytego. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 04:49 |