Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Stare Eregi
smietek
post 13.08.2010, 15:46:38
Post #1





Grupa: Zarejestrowani
Postów: 306
Pomógł: 32
Dołączył: 20.01.2008

Ostrzeżenie: (20%)
X----


W pewnym skrypcie znalazłem taki kod:

  1. foreach ($_GET as $u_url){
  2. if ((eregi("<[^>]*script*\"?[^>]*>", $u_url)) || (eregi("<[^>]*object*\"?[^>]*>", $u_url)) ||
  3. (eregi("<[^>]*iframe*\"?[^>]*>", $u_url)) || (eregi("<[^>]*applet*\"?[^>]*>", $u_url)) ||
  4. (eregi("<[^>]*meta*\"?[^>]*>", $u_url)) || (eregi("<[^>]*style*\"?[^>]*>", $u_url)) ||
  5. (eregi("<[^>]*form*\"?[^>]*>", $u_url)) || (eregi("\([^>]*\"?[^)]*\)", $u_url)) ||
  6. (eregi("\"", $u_url))){
  7. die ();}}


Gdy zaczynałem uczyć się PHP, już wtedy każdy trąbił, że ereg jest przestarzałe, dlatego uczyłem się od razu pisać wyrażenia pod funkcje z rodziny preg.
Czy mógłby mi ktoś wytłumaczyć (nie chcę gotowego rozwiązania w postaci wyrażenia dla preg), czego to szuka?


--------------------
Go to the top of the page
+Quote Post
bastard13
post 13.08.2010, 15:55:26
Post #2





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


Tak na pierwszy rzut oka, to wydaje mi się, że sprawdza czy w zmiennej wystąpiły znaczniki html (script, meta, iframe, form,applet, object, style), jeżeli tak to kończy skrypt.


--------------------
Go to the top of the page
+Quote Post
wookieb
post 13.08.2010, 16:02:46
Post #3





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




A mianowicie jest to jakaś marna próba zabezpieczenia $_GET przed wymienionymi htmlowymi znacznikami albo ochrona przed xss.


--------------------
Go to the top of the page
+Quote Post
smietek
post 13.08.2010, 17:36:39
Post #4





Grupa: Zarejestrowani
Postów: 306
Pomógł: 32
Dołączył: 20.01.2008

Ostrzeżenie: (20%)
X----


Tak w ogóle to opłaca się jeszcze trzymać ten kod?
Oczywiście po przepisaniu go na pregi, a właściwie na jednego prega, nie potrzeba kilku...
I przy okazji, dlaczego to marna próba?

Ten post edytował smietek 13.08.2010, 18:09:17


--------------------
Go to the top of the page
+Quote Post
wookieb
post 13.08.2010, 18:40:58
Post #5





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Nie warto ponieważ puszczenie xssa inną drogą nadal jest możliwe. Blokowanie xss robi sie na innych etapach. Blokowanie html-a tez na innych etapach.


--------------------
Go to the top of the page
+Quote Post
smietek
post 13.08.2010, 19:03:42
Post #6





Grupa: Zarejestrowani
Postów: 306
Pomógł: 32
Dołączył: 20.01.2008

Ostrzeżenie: (20%)
X----


A mógłbyś rozwinąć, na jakich to etapach (ten kod jest prawie na samym początku całego skryptu)?


--------------------
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: 19.07.2025 - 17:38