Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/02/2013, 19:29
Avatar de xIamAlex
xIamAlex
 
Fecha de Ingreso: abril-2012
Ubicación: Venezuela
Mensajes: 118
Antigüedad: 12 años
Puntos: 23
Respuesta: Las funciones que evitan el XSS tambien evita inyección HTML?

Por lo que veo creo que no.

Yo une vez agarré una función para evitar ataques XSS proporcionada por Gator (muy agradecido) en uno de los hilos de este foro, y lo único que hacía era evitar código javascript y flash (creo), del resto el código HTML seguía igual ya que se podía tomar en cuenta como código "inofensivo".

Esto es útil para desarrolladores que quieran hacer servicios de tipo Blogging, o algo por el estilo, o que simplemente dejen al usuario escribir código HTML en comentarios, etc..

En fin, si lo que quieres es evitar 100% cualquier tipo de código HTML, aquí te dejo una función que fabriqué desde entonces, es muy sencilla..

Código PHP:
<?php
    
    
function FilterXSS($String)
    {
        
$Find = array('&''<''>''=''"''\'');
        
$Replace = array('& #38;''& #60;''& #62;''& #61;''& #34;''& #39;'); /* Borra los espacios :P */
        
        
$String str_replace($Find$Replace$String);
        
        return 
$String;
    }
    
?>
Simplemente reemplaza cualquier caracter que permita formar código HTML en sí, y a su vez evitar sus entidades, saludos espero que te sirva.

Te sugiero que hagas el reemplazo DESPUÉS de que saques la información de la base de datos y NO ANTES de introducirla.
__________________
Las personas quieren autos, casas, teléfonos, dinero, poder, ser famosos, parejas, en fin.. yo solo quiero ser libre y feliz.