Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/02/2013, 06:25
areslepra
 
Fecha de Ingreso: diciembre-2010
Ubicación: Rosario, Santa Fe
Mensajes: 326
Antigüedad: 13 años, 5 meses
Puntos: 13
Respuesta: Medidas de seguridad a tomar en web

Cuando se habla de evitar SQLi y XSS, se deben aplicar filtros y validaciones a los datos introducidos (no solo a los campos GET provenientes de la URL, sino a TODOS los que no controlas). Por lo general aplicar filtros genéricos siempre genera problemas.
Lo primero que debes validar es que se tenga el conjunto de caracteres que sean necesarios (por ejemplo, si es un número, no hace falta hacer una cantidad de validaciones grande, con solo poner un cast a entero es suficiente).
Por lo general para evitar SQLi lo que debes hacer es pasar por la función que da el DBMS para dicha tarea, en tu caso mysql_real_escape_string. Para XSS la forma más simple es con htmlentities que va a transformar los caracteres HTML en sus entidades equivalentes, es decir < en &lt; lo cual "desarma" las etiquetas HTML.