domingo, 18 de mayo de 2014

Ponele + a tus mails

Muchos no lo saben pero el signo '+' está permitido como caracter especial en los mails.

¿Qué hace?


Fácil. Cuando se encuentra una dirección con un más. Se envía a otra dirección. Esa dirección es el resultado de quitar el signo y la parte que viene después del signo.

Es decir que los mails a juanperez+trabajo@gmail.com son enviados a juanperez@gmail.com.

Muy lindo. ¿Para qué sirve?


Yo suelo desconfiar mucho de varias páginas/servicios a los que me suscribo. Desconfío en general del uso que le darán a mi mail. El signo más me ayuda a detectar malos usos. Veámoslo con un:

Ejemplo


Salió una nueva página de cupones de descuento y yo tengo interés en anotarme. Entonces me registro, pero sólo por diversión en lugar de suscribirme con diego@gmail.com (no es mi mail real XD), me anoto como diego+cupones@gmail.com. Y uso la página normalmente.



Ahora, digamos que a la semana, me llega un mail sobre prevención de la disfunción erectil al que yo no me anoté. Reviso la dirección y noto que no fue enviada a diego@gmail.com sino que a diego+cupones@gmail.com.

¡Ajá! Hay alguien que está haciendo un uso indebido de mi suscripción y mi correo.

Pruébenlo


No se queden en creerme. Envíense ahora un mail agregando el +test para hacer una pruebita. Puede que tengan que buscar en las opciones para ver el destino del mail tal cual. Por ejemplo en gmail es haciendo click en la flechita.


Saludos

lunes, 14 de abril de 2014

Movibug

Descubrí un bug (comportamiento no esperado en una aplicación) de seguridad en movistar. Me parece que lo mejor que puedo hacer es compartirlo para que sea de público conocimiento. La primera vez que lo vi fue en enero y sigue en vigencia.

Estaba revisando mis movimientos en la página y me llamó la atanción lo mucho que demoraban las peticiones. Entonces entré en el modo desarrollador del browser y mi fijé cómo era la petición HTTP para ejecutarla yo.

Aqui un ejemplo modificado de la url:
https://online.movistar.com.ar/services/movimientoServlet?fechaDesde=14042014&fechaHasta=14042014&categoria=&orden=0&numeroLinea=XXXXXXXXXX

Como conté en otro post las peticiones HTTP pueden tener una serie de parámetros que se envían al servidor. En este caso me sorprendí bastante con los parámetros:

  • fechaDesde y fechaHasta, indican el período en el que se quieren ver los movimientos
  • categoria, indica qué tipo de movimientos, vacío es todo de tipo
  • orden, este parámetro no entendí bien su uso, pero no importa demasiado
  • ¿numeroLinea?
El último parámetro es el número de línea, y era mi número de celular. Por lo que pensé que si cambiaba este parámetro por otro número ¡podría ver los llamados y SMS hechos por cualquier otro número de Movistar!

Esperaba que sucediera algún tipo de error, pero no. Funcionó. Ingresé varios números de amigos clientes de Movistar y pude ver sus movimientos.

Nota: el formato de la respuesta es JSON, pero si se presta atención se puede entender un poco. También hay herramientas que ayudan a visualizar estos formatos.

Para reproducir el bug:
  1. Ingresar a la web de movistar
  2. Loggearse con usuario y contraseña. Si tienen uno se pueden registrar.
  3. En la barra de direcciones escribir una url como la siguiente reemplazando las "X", con código de area, por su número de línea: https://online.movistar.com.ar/services/movimientoServlet?numeroLinea=XXXXXXXXXX&fechaDesde=14042014&fechaHasta=14042014&categoria=&orden=0


Espero que arreglen esto pronto.
Saludos

viernes, 14 de marzo de 2014

Clases de internet: HTTP

Bueno, este sería el primero de mis post "clases de". Espero no abandonarlos y contarle a la gente un poco sobre cómo funcionan algunas cosas.
HTTP quiere decir Hyper Text Transfer Protocol, pero no interesa demasiado. Lo importante es que es una abstracción de una abstracción de una abstracción para no tener que ponernos a pensar en la cantidad de 1 y 0 que enviamos y recibimos por un cable. Todo se reduce a simples mensajes (o peticiones) a un servidor, con una respuesta.
Cuando nosotros hacemos click en un link del estilo http://google.com el browser lanza una petición http al servidor que dice, justamente, la url. Esa url de ejemplo dice: vaya al servidor en google.com y responda lo que hay ahí.
La cuestión viene en muchos sabores:
  • hay verbos para decir que queremos obtener información, o entregarla, o borrarla
  • hay una versión segura llamada https
  • hay una variedad de parámetros en las peticiones que se envían al servidor
En resumen, una petición HTTP es un viaje al servidor que sabemos dónde está para obtener una respuesta repetible. Con repetible, me refiero a que cada vez que volvamos a hacer la misma petición, la respuesta será la misma.

Fuente:
  • Elaboración propia
  • http://es.wikipedia.org/wiki/Hypertext_Transfer_Protocol

lunes, 10 de marzo de 2014

Primer post

Como mucha gente, siempre tuve ganas de tener un blog. La existencia de este tiene la doble excusa de compartir lo que tengo ganas y de mejorar mi redacción.
Soy estudiante avanzado de ingeniería en informática en la UBA y trataré de no ser muy técnico cuando escriba cosas ñoñas. Me gusta cocinar así que puede que escriba algo sobre eso también.
Se aceptan críticas constructivas.
Saludos.