Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Xephiro en 7 Septiembre 2008, 04:51 am



Título: [AYUDA] Seguridad en $_POST y $_GET
Publicado por: Xephiro en 7 Septiembre 2008, 04:51 am
Hola, quisiera saber de que forma puedo proteger mi web para evitar injections y algun otro tipo de vulnerabilidades en los GET y POST de formularios en PHP?


Título: Re: [AYUDA] Seguridad en $_POST y $_GET
Publicado por: дٳŦ٭ en 7 Septiembre 2008, 07:05 am
Hola, quisiera saber de que forma puedo proteger mi web para evitar injections y algun otro tipo de vulnerabilidades en los GET y POST de formularios en PHP?

Código
  1. ######################################################################
  2. # editada por Ing_Amc. http://foro.elhacker.net                                                                                            #
  3. #para la prevención de inyección SQL descubierta por Sidarkcat                                                                                           #
  4. function addslashes__recursive($var){                                          #
  5. if (!is_array($var))                                                           #
  6. return addslashes($var);                                                       #
  7. $new_var = array();                                                            #
  8. foreach ($var as $k => $v)$new_var[addslashes($k)]=addslashes__recursive($v);  #
  9. return $new_var;                                                               #
  10. }                                                                          #
  11. $_POST=addslashes__recursive($_POST);                                          #
  12. $_GET=addslashes__recursive($_GET);                                            #
  13. $_REQUEST=addslashes__recursive($_REQUEST);                                    #
  14. $_SERVER=addslashes__recursive($_SERVER);                                      #
  15. $_COOKIE=addslashes__recursive($_COOKIE);                                      #
  16. ######################################################################
  17.  

Suerte


Título: Re: [AYUDA] Seguridad en $_POST y $_GET
Publicado por: Xephiro en 7 Septiembre 2008, 08:17 am
Una consulta con respecto a ese metodo, lo habia visto ya en una Chincheta en este mismo foro, pero yo al utilizar ese addslashes__recursive altero los datos, en caso de querer leerlo no me influye? o tengo que utilizar algo mas para leerlos nuevamente?


Título: Re: [AYUDA] Seguridad en $_POST y $_GET
Publicado por: Ertai en 8 Septiembre 2008, 05:51 am
Esa función te irá bien en la mayoria de casa pero no la recomiendo, sé que es muy bonita porque es recursiva pero no te protejera "de todo".

Aparte de eso, harás el mismo efecto activar las magic_quotes "al vuelo"...

Código:
La directiva de PHP magic_quotes_gpc tiene un valor por defecto de on, por lo que de forma automática se llama a la función addslashes() en todos los datos que llegan a través de los métodos GET y POST y a través de las cookies. Por tanto, no es necesario emplear la función addslashes() en las cadenas que ya han sido escapadas mediante la directiva magic_quotes_gpc ya que si no, se harí un doble escape. La función get_magic_quotes_gpc() puede ser útil para comprobar el valor de esta directiva. 

No pienses en lo que te puedan entrar, piensa en lo que tu quieres tener, y sanea partiendo de aquí.

Te recomiendo las expresiones regulares.

Un saludo!