InputFilter, Protege tus variables en PHP de XSS

Tags: , ,

Uno de los problemas más comunes del internet es la vulnerabilidad cross-site scripting XSS, este tipo de vulverabilidad está en que normalmente no se validan correctamente los datos de entrada que son usados en cierta aplicación. Mas sobre XSS

Pero aqui una de las mejores soluciones que existen para el filtrado de variables en PHP, se llama InputFilter, muy sencilla de usar.

$result;
// Primero instancia la clase con un require_once,
// te recomiendo uses este, porque si usas el requiere,
// cuando uses AJAX tendras problemas con estas importaciones.
require_once("misclases/class.inputfilter_clean.php");
//Instancias la clase
 $myFilter = new InputFilter();
// Procedes a filtrar la variable
$result = $myFilter->process($_POST["input"]);

Tiene ademas de esta sencilla aplicacion un sin numero de opciones, puedes verlas en este ejemplo.

Filtra tus input con “inputfilter”

Tags: , ,

Esta clase puede filtrar la entrada de las etiquetas perdidas o malévolas de PHP, del Javascript o del HTML y prevenir ataques scripting del XSS (XSS). Debe ser utilizada para filtrar la entrada provista por el usuario, tal como un código del HTML introducido en campos de la forma.

He intentado hacer esta clase tan fácil como sea posible utilizar. Usted tiene control sobre el procedimiento de filtrado desemejante de otros alternativas, y puede entrar una secuencia o un arsenal entero que se limpiarán (por ejemplo $_post).

require_once("class.inputfilter_clean.php");
$myFilter = new InputFilter($tags, $attr, $tag_method, $attr_method, $xss_auto);

Explicando brevemente, despues de instanciar la clase puedes modificar los siguientes parametros:

/**
* Constructor for inputFilter class. Only first parameter is required.
* @access constructor
* @param Array $tagsArray - list of user-defined tags
* @param Array $attrArray - list of user-defined attributes
* @param int $tagsMethod - 0= allow just user-defined, 1= allow all but user-defined
* @param int $attrMethod - 0= allow just user-defined, 1= allow all but user-defined
* @param int $xssAuto - 0= only auto clean essentials, 1= allow clean blacklisted tags/attr
*/
 
$result = $myFilter->process($_POST["input"]);

Despues de haberla configurado a tu gusto y antojo, lo unico que hay que hacer es filtrar cada campo con el codigo anterior y listo.

Espero les sirva.

Fuente de la Clase

© 2009 Jotadeveloper Blog. Nuestros contenidos están bajo licencia Creative Commons mientras no se indique lo contrario,
y pueden reproducirse libremente sin más que mencionar la fuente ("JotaDeveloper") y la URL concreta del artículo original. .

This blog is powered by Wordpress and JotaDeveloperTheme.