sábado, 1 de noviembre de 2014

Vulnerabilidades en I2P que afectan a Tails

Tails [1] es un sistema operativo que se ha construido con el propósito de brindar un nivel de privacidad y seguridad alto, incluso contra organizaciones con una importante cantidad de recursos para tareas de espionaje. Sin embargo, como es bien sabido, es extremadamente difícil construir un sistema de cómputo libre de errores, los cuales que llevan a problemas de seguridad, especialmente cuando se incluyen librerías y aplicaciones de terceros.

Recientemente fueron descubiertas varias vulnerabilidades [2], [3], en una aplicación suministrada como parte de Tails, llamada I2P [4]. Esta aplicación ofrece un servicio similar al de Tor project para anonimizar el tráfico de red que circula desde y hacia el cliente. Las vulnerabilidades permiten la ejecución remota de código y por lo tanto la extracción de información para identificar al usuario.

En primer lugar fueron encontradas varias fallas [2] en la versión 0.9.13 I2P, parte de Tails 1.1 y anteriores, entre las que se mencionan XSS e inyección de valores de configuración que pueden a llevar a la inclusión de plugins maliciosos con la consecuente ejecución remota de código. En [4] se mencionan las correcciones realizadas por los desarrolladores de la aplicación:

Security fixes:

* Fix several XSS issues.
* Disable change news feed URL from UI.
* Disable plugin install.
* Disable setting unsigned update URL from UI.
* Disable clients.config editing form the UI.
* Add content-security-policy and X-XSS-protection headers.
* Disable unused ExecNamingService.

Estas vulnerabilidades animaron a otros investigadores a analizar con mayor profundidad la seguridad de I2P. En [3] se describe una nueva vulnerabilidad, que consiste en la inyección de una opción de configuración a través de la URL. I2P incluye un servidor WEB ligero que permite administrar la configuración del aplicativo desde el navegador. Un error en la validacón de uno de los parámetros, permite la inclusión arbitraria de opciones de configuración, entre las que se incluye una que permite ejecutar un script arbitrario. De esta manera se puede ejecutar código en la máquina del cliente y por lo tanto descubrir su identidad. En [5] se describen las correcciones realizadas por los desarrolladores.

Se recomienda actualizar a la la última versión disponible de I2P (0.9.15) o utilizar la última versión disponible de Tails (1.2). Debido a éstos últimos problemas de seguridad, los desarrolladores de Tails han decidido desactivar I2P por defecto, solo siendo activado si el usuario lo desea utilizar. Se pone de manifiesto con esto que se requiere una mayor auditoría de seguridad en las herramientas que buscan proteger la privacidad de los usuarios, y la implementación de medidas de contención, como por ejemplo los sandbox [6].

[1] https://tails.boum.org/
[2] http://blog.exodusintel.com/2014/07/23/silverbullets_and_fairytails/
[3] http://www.phenoelit.org/blog/archives/2014/10/11/tldr_just_another_way_to_get_rce_in_i2p_version_0_9_13/index.html
[4] https://geti2p.net/es/blog/post/2014/07/26/0.9.14-Release
[5] https://geti2p.net/es/blog/post/2014/09/20/0.9.15-Release
[6] https://www.mail-archive.com/tails-dev@boum.org/msg06414.html