• Publicidad

Sobre XSS

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Sobre XSS

Notapor elnico » 2008-02-10 20:15 @885

Hola a todos.

Mi pregunta es si estoy haciendo bien querer prevenir una aplicación de ataques XSS realizando un filtrado por medio de expresiones regulares (dentro del cgi que uso para grabar datos en mi base de datos) de los conjuntos de caracteres más comunes en ese tipo de ataques.

Ejemplo: XSS, alert, javascript, <script>, <iframe>, ", ', etc.

Y lo mismo hago en JavaScript para los formularios Ajax.

Espero haberme expresado claramente.
Saludos y gracias de antemano.
elnico
Perlero nuevo
Perlero nuevo
 
Mensajes: 69
Registrado: 2007-09-09 14:44 @656

Publicidad

Notapor explorer » 2008-02-10 20:50 @909

El uso de expresiones regulares está muy bien para estos casos. Ahora bien...

Lo ideal es filtrar la entrada por aquello que esperamos, no por aquello que no esperamos.

Eso quiere decir que, si sabemos cómo deben ser la entrada, solo nos quedaremos con esos caracteres.

Un ejemplo: si queremos recibir un texto que solo debe contener caracteres alfanuméricos, pasaremos la entrada por una expresión regular que elimine todo carácter que no sea eso.

Si en el texto que esperamos queremos permitir el uso de caracteres como '>' o '<' y demás, siempre podemos "escapar" o convertir este texto a entidades HTML, con la ayuda de la función escapeHTML() del módulo CGI.

Mira la documentación del módulo CGI, en la parte que habla de AUTOESCAPING HTML.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Norther » 2008-02-11 12:33 @564

Esa es la función que utilicé yo en un módulo que hice para introducir datos de discos, necesitaba poder utilizar todos los tags pero al mismo tiempo impedir cualquier tipo de inyección de código y me vino genial.

Si quieres comprobar si está bien protegido cuando termines de codearlo busca en google XSS GreaseMonkey y bajate un script muy bueno en jscript para localizar XSSs en formularios y links
Norther
Perlero nuevo
Perlero nuevo
 
Mensajes: 117
Registrado: 2007-07-24 13:47 @616
Ubicación: Asturias

Notapor Jenda » 2008-02-11 16:17 @720

Si quieres aceptar alguno de los tags HTML pero no todos y ninguno de los atributos JavaScript, o algo así, puedes bajar un módulo desde aquí: http://jenda.krynicky.cz/#HTML::JFilter

Tu especificas qué tags y atributos quieres aceptar y todo lo otro va será eliminado.
-------------------------------------------------------
- Estoy aquí para practicar español. Si te ayudó mi respuesta ayudame con un mensaje privado sobre mis faltas por favor. Seguramente habrá muchas :-)
Jenda
Perlero nuevo
Perlero nuevo
 
Mensajes: 132
Registrado: 2007-10-29 06:31 @313
Ubicación: Praga, Republica Checa

Notapor elnico » 2008-02-11 19:12 @841

Gracias a todos por sus respuestas.
La función del módulo CGI funciona perfecto.
En cuanto a XSS GreaseMonkey lo voy a probar cuando tenga un poco más de tiempo.
Saludos.
elnico
Perlero nuevo
Perlero nuevo
 
Mensajes: 69
Registrado: 2007-09-09 14:44 @656


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados