Tecnolack - blog de cultura geek

Campañas políticas en México hacen Spam

account_circle Por Davemm access_time 25 de marzo del 2010

Hoy en la mañana me tome un tiempo para checar mi correo electrónico, y en una de mis cuentas (sí, tengo varias) tenía el siguiente mensaje:

Inmediatamente vino a mi mente el siguiente pensamiento: «Ahora tienen Twitter, Facebook, dominios de primer nivel ….y encima de eso, ¡Hacen spam!«. Según la Wikipedia, spam es:

Se llama spam o correo basura a los mensajes no solicitados, habitualmente de tipo publicitario, enviados en grandes cantidades (incluso masivas) que perjudican de alguna o varias maneras al receptor. La acción de enviar dichos mensajes se denomina spamming.

Bueno, bueno …tal vez estoy exagerando, pero para empezar… el mensaje me fue enviado a una cuenta de correo secreta (ya no) y personal (ya no, tampoco) la cual pertenece a un dominio de mi propiedad y en el cual solo existen 3 cuentas de correo, nunca he usado esa cuenta de correo para completar ningún registro en ningún lado y solo unas cuantas personas tienen conocimiento de dicha cuenta. ¿Quién fue el maldito que me vendió a los spammers?

Inmediatamente hice clic en el último enlace del correo, para darme de baja de su lista de spam, hell yeah!.

GEEK STUFF

Analizemos el último enlace del mensaje de correo, el que según nos da de baja de la lista de spam: http://www.vizcarra.mx/remover.asp?correo=CORREO@DOMINIO.COM

Que pasaría si en lugar de una dirección de correo válida, alguien hiciera esto:

Ahora supongamos que los programadores del sitio usan la siguiente consulta para remover los correos de la lista de spam:

	DELETE FROM lista_de_spam WHERE correo = "A la grande le puse Cuca";

Sigamos suponiendo y digamos que en lugar de poner A la grande le puse Cuca como dirección de correo electrónico, alguien pusiera lo siguiente: » OR 1=1; SELECT «

La consulta quedaría así

	DELETE FROM lista_de_spam WHERE correo = "" OR 1=1; SELECT "";

La consulta original quedaría compuesta por una consulta que elimina todo lo que hay en lista_de_spam, y por una consulta SELECT que simplemente regresa un campo vacío. Esto se conoce como Inyección de SQL:

Inyección SQL es una vulnerabilidad informática en el nivel de la validación de las entradas a la base de datos de una aplicación. El origen es el filtrado incorrecto de las variables utilizadas en las partes del programa con código SQL. Es, de hecho, un error de una clase más general de vulnerabilidades que puede ocurrir en cualquier lenguaje de programación o de script que esté incrustado dentro de otro.

La posibilidades son infinitas, si alguien tiene el tiempo – y las ganas – de hacer pen-testing al sitio, reporte los errores a webmaster@vizcarra.mx… yo por mi parte ya reporte los posibles problemas que pueden causar el no validar la entrada de los datos.

Saludos 😀

@Mail
Recibe actualizaciones vía email.