Ver Mensaje Individual
  #15 (permalink)  
Antiguo 16/05/2011, 16:33
Avatar de stramin
stramin
 
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Ataque a mi web por inyección mysql

vaya que si es molesto que hagan eso, pero es muy común, y no solo en las variables $_GET, actualmente enviar datos alterados por $_POST es muy fácil también con herramientas como google Chrome

Cuando haces un envió por get tu url queda algo así:

Código HTML:
Ver original
  1. pagina.com?variable=valor

tu tomas ese valor y lo pones en una sentencia mysql y queda algo asi:

Código PHP:
Ver original
  1. "Select * FROM tabla where variable1='".$_GET[variable]."';"

lo que se convierte en:

Código MySQL:
Ver original
  1. "Select * FROM tabla where variable1='variable';"

pero que pasa si un usuario cambia la url a esto?

Código HTML:
Ver original
  1. pagina.com?variable=valor';DELETE FROM tabla

pues, que tu sentencia queda así:

Código MySQL:
Ver original
  1. "Select * FROM tabla where variable1='variable';DELETE FROM tabla"

y pierdes toda esa tabla de la base de datos.

Para evitar este tipo de cosas tal como te dijo GatorV asegúrate de que los campos numéricos sean numéricos (is_numeric($variable);) y si son textos reemplaza todos los ' por \' (str_replace("'","\'",$variable);)

algunos se creen hackers pero es tu deber demostrarles que son noobs!

tienes suerte de que estén ayudandote rápido con esto, es algo que no debes dejar pasar mucho tiempo mas.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D