Sólo Dios quita y pone a las autoridades

Críticas/{ Paranoias | Política } — 4/12/2006 @ 18:54

Esa frase es de hace medio mes ya, pero me había pasado desapercibida y no puedo dejar pasar semejante burrada que ha soltado Ulises Ruiz, penoso gobernador de Oaxaca, culpable de la rebelión de profesores que desembocó en revuelta civil en esa región de México, y que a pesar de las protestas, las peticiones del parlamento y la brutal represión de la sublevación popular no ha dimitido ni piensa dimitir.

Me pregunto cuánto peso tiene Dios en los comicios (Dios=Pucherazo?!?!?), o si es que Dios le ha dado directamente super-poderes, como a Bush y a Supermán.

Ojito con AJAX y JSON

De frikis/{ Hacking | Curiosidades } — 4/12/2006 @ 18:30

AJAX es cool, JSON mola, Web 2.0 y 3.0 son lo más… ¡¡¡Pero volvemos a lo de siempre, ojito con la seguridad!!!

Normalmente si desde una página cargas otra (de un dominio diferente) en un frame, y tratas de acceder a su contenido, el navegador no te dejará por motivos de seguridad. Por ejemplo si en esta página pongo un iframe con www.gmail.com, se cargará tu cuenta de correo, pero desde código javascript de mi máquina no puedo acceder al contenido del frame y leer tu correo.

Sin embargo sí que se puede acceder a las variables y/o funciones javascript incluidas en un <script src="…", aunque la url que utilices sea remota, perteneciente a un servidor remoto.

Si en nuestro servidor incluimos datos sensibles, información privada de usuarios como código javascript, desde páginas remotas se podrá invocar el script, y si tienen la sesión iniciada es posible robar datos.

Eso solo pasa cuando se utiliza JSON (se devuelve código javascript en respuesta a peticiones AJAX). Es mas rápido que devolver XML (el formato original de AJAX) y que nuestro javascript tenga que procesarlo, pero puede traer problemas como el de inclusiones remotas. Este problema le ha pasado nada menos que a Google, experto en web 2.0, AJAX y demás, con lo que no quiero ni pensar lo que podría hacer esto en manos de webmasters poco hábiles.

Ya sabes, si utilizas JSON para máxima velocidad a la hora de responder peticiones AJAX, debes revisar bien su seguridad:

  • No incluyas datos sensibles sacados de sesión en respuestas JSON (sólo respuestas a los parámetros dados).
  • Si necesitas hacerlo, incluye unos tags HTML o basura antes y después, para que no pueda ser invocado como código javascript (de error al incluirlo).
  • Haz que la URL no sea fácilmente predecible.
  • Comprueba que el referrer es tu propia página y no ninguna externa

Diario de sueños de Guillermo Pérez (aka bisho)