![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 1 Dołączył: 25.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Napisałem sobie skrypt który zapisuje mi użytkowników do bazy danych.Zastanawiam się nad jego bezpieczeństwem moglibyście rzucić okiem ?
Proszę, bo naczytałem się w internecie: zawsze addslashed i htmlspecialchars(), moża też spotkać coś takiego : $email = htmlspecialchars(stripslashes(strip_tags(trim($_POST["email"]))), ENT_QUOTES); <- tworzenie takiego czegoś dla hasła kompletnie go zmieni. Przeglądałem i zastanawiałem się nad moim kodem wiele razy, według mnie nie ma żadnej luki.Ale nie daje mi to spokoju.
/--------------------------------- przepraszm za dziwne tab'y. Ten edytor coś wyzmieniał mi dlatego jest nieczytelnie. Ten post edytował tadeurz 1.02.2013, 16:51:09 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 1 Dołączył: 25.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
ten skrypt nie jest jeszcze idealny.
znalazłem informacje na temat luki dotyczącej preg_match i znaku nowej nowe linii: http://blog.php-security.org/archives/76-H...ch-filters.html Jakby wynikało z kodu( z postu 1) mój skrypt jest na ten atak podatny, ale w praktyce tak nie jest. Próbowałem dla : 'tadeurz@ble.pl \n ania@ble.pl' nie przeszło. 'tadeurz@ble.pl%0A ania@ble.pl' nie przeszło. Potem jak drukowałem zmienną email to '\n' '%0a' drukował mi jak zwykłe znaki. Wyjątek stanowił przypadek kiedy przesłałem zmienną z ‘%0A’ przy pomocy tablicy GET -> wtedy potraktował mi ten symbol jako znak nowej linii, ale mimo tego nie przeszedł walidacji preg_match. Dlaczego ? Dodam że próbowałem dla wyrażenia regularnego zawartego w ' i " , bo znam ich różnice w przypadku echo’’ a echo””. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 19:24 |