21/01/2009, 11:40
|
| | Fecha de Ingreso: febrero-2007
Mensajes: 62
Antigüedad: 17 años, 9 meses Puntos: 0 | |
Respuesta: Problema con SQL inyeccion Hola Genetix y Madian:
Gracias por las respuestas, voy atener en cuenta ello y ponerlo en practica, por que aun estoy en el dilema de si me funciono o no, ayer precisamente y gracias a un muy buen forero de aca. Don patron, al cual el agradezco mucho.
Estuvimos mirando el codigo de la pagina y analizandolo.
el codigo expuesto al principio mi post lo dejamos tal cual y lo unico que se agrego fue que como se reciben numeros enteros por GET, se agrego esta linea:
$NuevaVar = (int)$_GET['MyVar'];
Esta lo que hace hasta donde entendi, es que verifica y es true si los datos son numeros enteros. Hicimos con don patron las pruebas con letras y caracteres especiales y fue muy interesante ver que los termina convirtiendo en 0 (cero) en caso de que sean letras o caracteres especiales, con lo cual se condicona mas la consulta para la BD si no existe en ella un dato con el numero 0.
Y bueno, desde la pagina donde se envian los datos se programo para que efectue una consulta y basado en la informacion que suministra la consulta se condiciona con un if para que muestre o no el formulario, este es un pequeno pedazo inicial para evitar el sql injection (creo yo) basado en loq ue he leido e investigado. Mas o menos esta prevencion con el fi se podria decir que es como un manejo de posibles errores y la idea que uno se antepondria a ellos.
al igual se implementa el uso de expresiones regulares, condicionales if y el uso del mysql_real_escape_string, tal cual al funcion del inicio del post.
Estoy efectuando scan de la pagina, pienso usar varios programas para corroborar los datos y la informacion y si la cosa funciona bien y tras los bombardeos de los programas no muestra riesgo de sql injection, entonces les estare avisando aca y explicando mas detalladamente la iomplementacion para todas a quellas personas que puedan tenr el mismo problema que yo.
Espero que funcione y se lo pido al todo poderoso de arriba. |