En la entrada de hoy vamos a ver un tipo de bypassing sobre filtros XSS en aplicaciones web. Es algo muy básico, pero para los que estamos empezando nos puede venir bien si no lo conoces.
Antes de nada aclarar que un bypass no es otra cosa que atravesar alguna medida de seguridad, en este caso, en la web.
Seguro que alguna vez trasteando has intentado lanzar un script en una caja de búsqueda de una web (siempre en una maquina virtual) y te has encontrado con que no podías usar tu script porque tiene un limite de 8 caracteres para la búsqueda. Bien, pues vamos a ver como evadirlo de una forma muy sencilla.
Lo primero que debemos hacer es descargar el complemento firebug para Firefox. Para ellos abrimos el navegador y vamos a herramientas -> complementos y en el cuadro de búsqueda escribimos firebug y le damos a instalar.
Bien, lo siguiente es ver que pasa en la web, porque recordemos que no podemos escribir en el cuadro mas de X caracteres, en este caso 20.
Si vemos con firebug -pulsando F12- el código (para no ir buscando de uno en uno, usamos el buscador xD) veremos el valor que tiene. Buscaremos maxlength que esta a 20.
El siguiente paso es modificar dicho valor por uno mas elevado para que podamos poner el código que queramos.
Supongamos que tenemos el siguiente código
- <img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1O2IK_axu9LvV62zlew6Wx804CzwJh3WchO5_U_6ApExyuO_CV29Jwt4y_LsB6t4pOz2gX4RgkzwAijIFKgzg0SW7WG0Dhy0jSdrVRDqw2qAWVIWcQp97FbjtQePeRiv9xslODms8_yg/s1600/15599_mariano-rajoy-lengua-fuera.jpg”>
Obviamente vemos que tiene más de 20 caracteres, así que no entraría. Lo que debemos hacer es modificar el valor de maxlength a 200 (por ejemplo) para que nos entre el código.
Si ahora probásemos a meter el código, ya entraría, otra cosa es que funcione.
Hemos visto como podemos evadir un filtro de manera sencilla.
Recordar que esto es con fines educativos, no para andar tirando scripts por ahí a lo loco.
Espero que os haya gustado y lo pongáis en practica en vuestro laboratorio.
Roberto García (@1GbDeInfo)