Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem ze slash'ami, Bezpieczeństwo
MP1
post
Post #1





Grupa: Zarejestrowani
Postów: 194
Pomógł: 0
Dołączył: 22.09.2003
Skąd: Polska

Ostrzeżenie: (0%)
-----


Automatyczne dodawanie slashów zależy od konfiguracji serwera. To sprawia problem.

Zaaktualizowane
Tekst przesyłany jest metodą $_POST. Jak wiadomo, php doda do niego slashe. Potem slashe doda jeszcze funkcja mysql_real_escape_string(), więc będą podwójne (\\\\).

Co więc zrobić, by nie były one podwójne? Otwieram tabelę w programie MySQL Control Center i wygląda, jakby MySQL usunął niepotrzebne (\\). Jednak to jest chyba nieprawda.
Odczytuję z bazy dane z linijką na początku skryptu:
Kod
set_magic_quotes_runtime(1);

W polu textarea pojawiają się "\\" zamiast "\" (jak było wysłane metodą POST).

1. Czy automatyczne dodawanie slashów przez php jest wystarczające, by nie doszło do SQL Injection?
2. Jak najlepiej ten problem rozwiązać?
3. Czy wystarczy tylko zamienianie " na \", by nie doszło do SQL Injection (SET costam=" i w cudzysłowiach dopiero zmienna ", )?


:excl: Można to rozwiązać, sprawdzając czy GPC jest włączone i jeśli tak, zastosować stripslashes(), ale być może nie ma co tyle kombinować.

Ten post edytował MP1 2.01.2006, 17:21:59


--------------------
COMPMaster: REAKTYWACJA
F3Sonda: gotowe
F3Kartki:
Go to the top of the page
+Quote Post
dtb
post
Post #2





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

Ostrzeżenie: (0%)
-----


1. upewnij sie ze masz wylaczona obsluge zapytan zawierajce ; i bedzie ok
2. zrob sobie jakies filtry typu:
* tylko znaki alfanumeryczne
* tekst nie dluzszy niz n znakow
* tekst nie moze zawierac znakow x, y, z
itp.

Ten post edytował dtb 2.01.2006, 17:24:25


--------------------
Go to the top of the page
+Quote Post
zulus
post
Post #3





Grupa: Zarejestrowani
Postów: 225
Pomógł: 18
Dołączył: 30.06.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


ja jak odbieram dona z $_POST lub $_GET, to przepuszczam przez stripslashes() a potem mam spokój.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 13:17