Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]FORMULARZ FILTROWANIE DANYCH, Filtrowanie danych w formularzu
grzesio
post 12.12.2019, 23:00:52
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 24.12.2003
Skąd: Wisła

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


Czy ta filtracja jest wystarczająca ?


  1. $password= htmlspecialchars($password)
  2. $login= htmlspecialchars($login)
  3.  
  4.  
  5. $login=mysqli_real_escape_string($con, $login);
  6. $password=mysqli_real_escape_string($con, $password);


--------------------
"nie ma głupich pytań są tylko głupie odpowiedzi" -babcia Wladzia
a jednak slonce swieci dla wszystkich
Go to the top of the page
+Quote Post
viking
post 13.12.2019, 06:07:14
Post #2





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Zależy np od zdefiniowanego kodowania znaków dla połączenia (tak, są takie ataki). Poza tym głupotą jest filtrowanie znaków z hasła i pewnie zapis jako tekst. Poczytaj też o bindowaniu.


--------------------
Go to the top of the page
+Quote Post
nospor
post 13.12.2019, 11:52:51
Post #3





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




Cytat
FORMULARZ FILTROWANIE DANYCH
Nie krzycz, nie ma takiej potrrzeby - naprawde.

Poza tym dobrze by bylo, byś napisał do czego ta "filtracja" bo pomijając to co napisał viking, to dodam np. ze wkladania do bazy htmlspecialchars jest totalnie zbędne i wręcz może czasami przeszkadzać. htmlspecial chars uzywa się do filtracji przed wyświetlaniem danych.

Poza tym jak viking już napisał - bindowanie rozwiąże większość twoich problemów jeśli chodzi o bazę.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
dublinka
post 13.12.2019, 14:24:09
Post #4





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

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


To sobie poczytaj..
https://websitebeaver.com/prepared-statemen...t-sql-injection


--------------------
Go to the top of the page
+Quote Post
grzesio
post 14.12.2019, 19:57:06
Post #5





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 24.12.2003
Skąd: Wisła

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


Cytat(nospor @ 13.12.2019, 12:52:51 ) *
Nie krzycz, nie ma takiej potrrzeby - naprawde.

-Hej


- haha jeszcze nie ma potrzeby...... jeszcze NIE exclamation.gif!

załóżmy że jest to process REJESTRACJI UZYTKOWNIKA

używam:

Funkcji trim() która usuwa białe znaki (symbol nowego wiersza \n, powrotu karetki \r, tabulacji \t, znaki końca wiersza \0 oraz spacje)
znajdujące się przed tekstem oraz za tekstem....ale nie w środku


używam htmlspecialchars()
wtedy ZANCZNIKI HTML < > zamieniam na ich odpowiedniki języka HTML &lt; i &gt;

używam
"mysqli_real_escape_string()", która została specjalnie napisana,
aby chronić kod przed atakiem "SQL injection".

przepuszczam tylko dozwolone znaki .....
$not_in_list = "A-Z0-9a-z\s_-";



JEDNAK CHCIAŁBYM BYĆ INFORMOWANY o wszelkich niezgodnościach ATAKACH przy logowaniu:



Czy warto ZAPISAĆ PRÓBY ATAKU ?

1. if ((!isset($_POST['rejestracjaEmail'])) || (!isset($_POST['login']))) { ALERT OSTRZEZENIE.......

2. if (strlen($name) < 3) if (strlen($name) > 25) ALERT OSTRZEZENIE

3. Jeśli wykryję symbol nowego wiersza \n, powrotu karetki \r, tabulacji \t, znaki końca wiersza \0 oraz spacje)
znajdujące się przed tekstem oraz za tekstem wtedy - ALERT OSTRZEZENIE


4 jeżeli jest Sql injection ALERT OSTRZEZENIE

5. przepuszczam tylko dozwolone znaki .....
$not_in_list = "A-Z0-9a-z\s_-"; jeżeli znaki są niedozwolone - ALERT OSTRZEZENIE
(W tym usuwanie polskich,ruskich znaków diakrytycznych)


[php][/php]


--------------------
"nie ma głupich pytań są tylko głupie odpowiedzi" -babcia Wladzia
a jednak slonce swieci dla wszystkich
Go to the top of the page
+Quote Post
nospor
post 14.12.2019, 22:21:24
Post #6





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




Z lekka przekombinowales to wszystko. No i sluchaj co sie do ciebie mowi. Chyba po to przyszedles

Juz ci pisalem: htmlspecialchars nie do tego sluzy

mysqli_escape zastap bindowaniem

Skoro pozwalasz tylko na A-Z0-9a-z\s_- to po grzyba tak czy siak te wszystkie inne filtrowania? To jedno tutaj zalatwia wszystkie inne

No i po co ci te ostrzezenia? Ze ktos wpisal polska literke to chcesz byc powiadamiany? Co ci to da? Ze ktos wpisal wiecej niz 25 znkaow? Co ci to da? I to nie sa zadne proby ataku, ot, zwykly blad


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
grzesio
post 15.12.2019, 16:44:07
Post #7





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 24.12.2003
Skąd: Wisła

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


zastanawiam się jak wykryć próbę ataku i powiadomić ADMINA


--------------------
"nie ma głupich pytań są tylko głupie odpowiedzi" -babcia Wladzia
a jednak slonce swieci dla wszystkich
Go to the top of the page
+Quote Post
dublinka
post 15.12.2019, 18:09:41
Post #8





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

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


dowiesz sie jak Ci zrobią kuku bez bindowania danych.

Nigdy, przenigdy nie wyswietlaj informacji o jakimkolwiek bledzie. Chyba ze bedą to ew. najwazniejsze filtrowanie formularza.

Ten post edytował dublinka 15.12.2019, 18:11:38


--------------------
Go to the top of the page
+Quote Post
nospor
post 16.12.2019, 10:21:31
Post #9





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




Cytat
zastanawiam się jak wykryć próbę ataku i powiadomić ADMINA
Jak już ci pisałem: polskie znaki czy przekroczenie limitu znakow to nie proba ataku. Jak ktoś ci zacznie walić sqlinjection to wtedy masz probe ataku. Wiec jak bardzo chcesz o tym informowac to sprawdzaj czy ktos ci nie wali slowami kluczowymi bazy danych


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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 Wersja Lo-Fi Aktualny czas: 20.04.2024 - 05:56