Bastionado, seguridad en sistemas: XSS persistente en AirDroid pre { background:#eeeeee; border:1px solid #A6B0BF; font-size:120%; line-height:100%; overflow:auto; padding:10px; color:#000000 } pre:hover { border:1px solid #efefef; } code { font-size:120%; text-align:left; margin:0;padding:0; color: #000000;} .clear { clear:both; overflow:hidden; }

Bienvenido al blog

Bienvenidos al blog de seguridad en sistemas

martes, 9 de abril de 2013

XSS persistente en AirDroid

Estando algo aburrido en el bar viendo los Final Four del baloncesto universitario de EEUU, me dio por revisar los últimos tweets. Entre esos tweets estaba el del US-Cert notificando de una vulnerabilidad de XSS en la aplicación AirDroid debido a un fallo de saneamiento en la lectura de los mensajes o SMS (CVE-2013-0134). Resumiendo, si se recibe un SMS con cierto código JavaScript, al ser leido dicho SMS en la interfaz Web de AirDroid, se ejecutará el código JS contenido en el SMS.

Al ser una aplicación empleada por muchos dispositivos Android, decidí que nada más llegara a casa debía probarlo para ver en que consistia exactamente el fallo. Para la prueba empleé un Android 4 con AirDroid 1.1.0 (última versión disponible). 

Cotilleando un poco como funcionaba el tratamiento de mensajes con la herramienta de depuración de Firefox, y algun que otro plugin adicional, la solución parecía bastante sencilla:


Como vemos el "texto_SMS" está entre tags "<div>". Por lo que como prueba inicial lo que había que hacer era cerrar ese "div" e intentar introducir código JS básico para comprender como saneaba la aplicación ciertos caracteres. Para la primera prueba, y única, emplee algo tan sencillo como intentar ejecutar un pop-up con el texto "XSS":
a</div><script>alert("XSS");</script>
Al enviar al terminal Android dicho código como mensaje SMS, cuando este es visualizado en la opción de mensajes de AirDroid, se ejecuta el código JS del mensaje, y en el caso del ejemplo, se muestra la ventanita famosa con las letras "XSS":


Podemos ver la captura del mensaje original una vez ejecutado el código JS oportuno:


La verdad que bastante sencillito la vulnerabiliad, aunque todo sea dicho, la posibilidad de ser explotada es bastante baja. Pero bueno, todo sea por cotillear un poco la aplicación. Por ahora no hay parche, pero con un NoScript en Firefox o derivados y un poco de sentido común a la hora de emplear la herramienta debería ser suficiente.

PD: persistente siempre y cuando no se borre el SMS.

No hay comentarios:

Publicar un comentario