Foros del Web » Programando para Internet » PHP »

Función para prevenir ataques XSS

Estas en el tema de Función para prevenir ataques XSS en el foro de PHP en Foros del Web. Buenas amigos del foro, acá hice una función que evita ataques XSS para un sistema web que estoy desarrollando, después de que consulte todo tipo ...
  #1 (permalink)  
Antiguo 14/11/2012, 16:41
Avatar de xIamAlex  
Fecha de Ingreso: abril-2012
Ubicación: Venezuela
Mensajes: 118
Antigüedad: 12 años, 7 meses
Puntos: 23
Función para prevenir ataques XSS

Buenas amigos del foro, acá hice una función que evita ataques XSS para un sistema web que estoy desarrollando, después de que consulte todo tipo de información de la BD ingresada directamente por el usuario, ésta reemplazará los caracteres más simples que permitan la interpretación de código HTML, me pregunto si estará bien o si necesito cuidarme de algo más. Favor díganme que tal está y si es segura, la verdad es muy simple:

Código PHP:
    function PreventXSS($String)
    {
        
$Find = array('&''<''>''/');
        
$Replace = array('&#38 ;''&#60 ;''&#62 ;''&#47 ;');
        
$NewString str_replace($Find$Replace$String);
        
        return 
$NewString;
    } 
Saludos .

NOTA: En el replace los caracteres son entidades HTML, pero la página del foro los interpreta como caracteres normales.
__________________
Las personas quieren autos, casas, teléfonos, dinero, poder, ser famosos, parejas, en fin.. yo solo quiero ser libre y feliz.
  #2 (permalink)  
Antiguo 14/11/2012, 16:45
Avatar de abimex
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: ~
Mensajes: 751
Antigüedad: 17 años, 9 meses
Puntos: 137
Respuesta: Función para prevenir ataques XSS

usando PDO es mas seguro y no ocupas ninguna funcion adicional
aca hay un ejemplo http://stackoverflow.com/a/60496/1456961

Saludos
  #3 (permalink)  
Antiguo 14/11/2012, 16:52
Avatar de xIamAlex  
Fecha de Ingreso: abril-2012
Ubicación: Venezuela
Mensajes: 118
Antigüedad: 12 años, 7 meses
Puntos: 23
Respuesta: Función para prevenir ataques XSS

Yo uso prepared statements, y ni sabía que estos también evitaban ataques XSS

¡Gracias por el aporte !
__________________
Las personas quieren autos, casas, teléfonos, dinero, poder, ser famosos, parejas, en fin.. yo solo quiero ser libre y feliz.
  #4 (permalink)  
Antiguo 14/11/2012, 16:58
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Función para prevenir ataques XSS

Eso es para SQL Inyection, no para XSS, para prevenir XSS te recomiendo esta:

http://www.forosdelweb.com/f18/aport...ar-xss-948577/

Saludos.
  #5 (permalink)  
Antiguo 14/11/2012, 17:01
Avatar de xIamAlex  
Fecha de Ingreso: abril-2012
Ubicación: Venezuela
Mensajes: 118
Antigüedad: 12 años, 7 meses
Puntos: 23
Respuesta: Función para prevenir ataques XSS

Sí, ya empezaba a dudar, además acabo de probar una salida directa de la base de datos y si se pueden hacer XSS, pero sin embargo creo que implementaré la que me recomendaste Gator, ¡Mil gracias a los dos!
__________________
Las personas quieren autos, casas, teléfonos, dinero, poder, ser famosos, parejas, en fin.. yo solo quiero ser libre y feliz.
  #6 (permalink)  
Antiguo 14/11/2012, 18:45
Avatar de abimex
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: ~
Mensajes: 751
Antigüedad: 17 años, 9 meses
Puntos: 137
Respuesta: Función para prevenir ataques XSS

Cita:
Iniciado por GatorV Ver Mensaje
Eso es para SQL Inyection, no para XSS, para prevenir XSS te recomiendo esta:

http://www.forosdelweb.com/f18/aport...ar-xss-948577/

Saludos.
cierto, me confundí XD
  #7 (permalink)  
Antiguo 28/03/2013, 12:13
Avatar de jlmurgas  
Fecha de Ingreso: febrero-2010
Ubicación: Atiquizaya
Mensajes: 1
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta Respuesta: Función para prevenir ataques XSS

Yo estoy utilizando estas lineas que me encontre por ahi:
Código PHP:
function SanitizeInputXSS($dirty_input) {
      return 
htmlspecialchars(rawurldecode(trim($dirty_input)), ENT_QUOTES,'UTF-8');
 }

$name SanitizeInputXSS($_POST['name']); 

Mi problema es con los acentos y la ñ, en la base de datos me lo guarda con simbolor raros :/


si alguien sabe como solucionarlo se lo agradecere

Etiquetas: ataques, funcion, prevenir, xss
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:49.