![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 392 Pomógł: 7 Dołączył: 11.05.2008 Ostrzeżenie: (0%) ![]() ![]() |
Staram się filtrować dane pochodzące od użytkownika. Mam na myśli różnego rodzaju formularze. Cytat z innej strony: "Zmienna powinna mieć radykalne ograniczenia wielkości, tak aby potencjalny włamywacz nie mógł zablokować naszej strony.". Chcę użyć funkcji strlen aby ograniczyć długość tekstu. I moje pytanie. Jaka jest bezpieczna długość zmiennej pochodząca od użytkownika, aby uniknąć takiej sytuacji? (IMG:http://forum.php.pl/style_emoticons/default/blinksmiley.gif)
Ten post edytował Szunaj85 24.04.2009, 21:00:08 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 2 921 Pomógł: 269 Dołączył: 11.08.2005 Skąd: 127.0.0.1 ![]() |
Cytat Odnośnie tematu topiku ("Bezpieczna długość zmiennej") to IMHO sprawdzanie długości wprowadzanych danych też jest ważnym aspektem. Jak najbardziej. Jednak autorowi nie chodziło o to, czy należy sprawdzać długość ciągu, a o to, czy jest jakaś konkretna długość zmiennej, do jakiej powinien ją obcinać.Podstawowe zabezpieczenia: 1. Funkcje z rodziny escape (mysql_real_escape_string, pg_escape_string, itd). 2. Usuwanie znaczników html - strip_tags. 3. Zamiana na encje wszystkich znaków, które mogą coś rozwalić - htmlentities/htmlspecialchars. 4. Walidancja danych pod kątem ich typu. No i kilka dobrych rad o bezpieczeństwie. 1. Zawsze filtruj dane, nawet jeśli wiesz, że pochodzą one z "zaufanego" źródła. 2. Filtruj wszystkie dane - post, get, cookie, server. 3. Dane można (i powinno się) filtrować dwukrotnie - podczas zapisywania do bazy oraz podczas wyświetlania danych pobranych z bazy. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 04:42 |