domingo, 31 de mayo de 2015

Veneno, manzanas y un amargo despertar

Si existe un elemento malicioso con poder, temible y endiabladamente silencioso todo el mundo tiende a pensar en un rootkit. Un rootkit se instala en el mismo corazón del sistema, ahí construye su morada, habita y sale de caza cuando las condiciones le son propicias. Es devastador, el depredador perfecto, con capacidad para engañarte y los privilegios del núcleo del sistema e incluso más. Lo más parecido a un rootkit en el mundo real sería una cuenta en un paraíso fiscal. Oculta, poderosa, resistente a la ingeniería inversa y pensada para aprovecharse de los recursos del sistema mediante la perversión.

El dominio de un rootkit se mide por la capacidad de este para penetrar en el sistema. Más profundo, más privilegios. Todo el mundo piensa en el núcleo, pero imagina por un momento que antes de que el propio núcleo tenga la oportunidad de pasar por la CPU, mucho antes, existe un proceso de arranque que toma el control de todos los elementos para finalizar entregando el mando al sistema. Si es posible llegar hasta ese lugar donde comienza a despertar la máquina, el rootkit no solo será poderoso, también será inmortal.

Todo esto es lo que podría haber pasado por la cabeza del investigador portugués Pedro Vilanças (@osxreverser) cuando descubrió que todos los MacBook de Apple, anteriores a mediados de 2014, podían ser envenenados y al despertar de la hibernación notar la extraña presencia de un nuevo inquilino en el lugar.

Vilanças se interesó por los ataques a la EFI (Extensible Firmware Interface) a raíz de la recuperación de una contraseña de firmware que olvidó. Hablar de firmware e ingeniería inversa es hablar de adentrarse en una nueva dimensión donde parte del tiempo el investigador ha de alejarse del teclado para llevar sus dedos sobre los propios chips donde ya no se habla de simples variables, punteros o estructuras en memoria, sino de pulsos, frecuencias y voltajes.

A raíz de los trabajos de los investigadores: Trammell, y Rafal Wojtczuk junto con Corey Kallenberg, se podía llegar a la conclusión de que la modificación del firmware con acceso físico era posible a través del ataque de Trammell, ayudado con un dispositivo denominado OptionROM. Eso dejaba el vector de ataque limitado por ese "acceso físico", lo cual no es práctico para un atacante (ya sabéis lo engorroso que es eso de montar una operación de campo: alquilar disfraces, distraer al objetivo y vigilarlo a través de un periódico agujereado desde un banco del parque).

Escribir en la BIOS no es trivial. Existen varias capas de protección para impedir una manipulación del código de la BIOS. Básicamente las operaciones que intentan escribir en direcciones mapeadas a la BIOS están protegidas por ciertas "banderas" que son comprobadas por componentes encargados de verificar los privilegios de quienes inician estas acciones. Por supuesto, los trabajos comentados publicaban técnicas para evadir estas protecciones capa por capa.

Un ataque al que se le queda corto el adjetivo de sofisticado. Pero estaba esa pega del acceso físico, la necesidad de enchufar un cacharro que portaba un exploit en un puerto Thunderbolt, eso le quitaba elegancia al ataque.

Si se tiene cierto dominio del portugués, es fácil imaginar la exclamación de sorpresa que Pedro Vilança pudo haber soltado al descubrir algo que iba a cambiar la aproximación al ataque. Es posible manipular el firmware de un MacBook en remoto, sin necesidad de hardware adicional o acceso físico.

Vilanças se dio cuenta de que las protecciones contra escritura de la BIOS se encontraban desactivadas tras la vuelta del sistema desde el modo Sleep. Curiosamente y en concreto el sistema ha de estar algo más de 30 segundos para que tal evento ocurra.

Observemos un extracto del software empleado para leer la BIOS y su estado 'flashrom', antes del modo Sleep:

SPIBAR = 0xfed1c000 + 0x3800
0x04: 0xe008 (HSFS)
HSFS: FDONE=0, FCERR=0, AEL=0, BERASE=1, SCIP=0, FDOPSS=1, FDV=1, FLOCKDN=1
Warning: SPI Configuration Lockdown activated.
Reading OPCODES... done

Y esta otra cuando se toma tras volver del modo Sleep:

SPIBAR = 0xfed1c000 + 0x3800 0x04: 0x6008 (HSFS)
HSFS: FDONE=0, FCERR=0, AEL=0, BERASE=1, SCIP=0, FDOPSS=1, FDV=1, FLOCKDN=0
Programming OPCODES... done

Asombrosamente las protecciones están desactivadas (observemos la bandera FLOCKDN, flash lockdown) y esto no pasa desapercibido incluso para el propio software, cuando avisa del bloqueo en el primer registro:

Warning: SPI Configuration Lockdown activated.

La especificación ACPI define varios niveles o estados de consumo. El estado S3 hace referencia a la suspensión del sistema en RAM, es decir, todos los componentes son "apagados" a excepción de la RAM en la que el estado del sistema es mantenido hasta la transición hacia un estado operacional. Esa transición es controlada por un proceso perteneciente al EFI y según Vilanças es posible que contenga un bug que explicaría la vulnerabilidad.

Explica el propio Vilanças en su blog que no ha encontrado el mismo fallo en unidades posteriores a mediados o finales de 2014. Se pregunta si esto ha sido parcheado por Apple. Queda la duda abierta, puesto que aun no ha salido una corrección para los firmwares afectados.

Uniendo todas las piezas queda claro que, aunque es complejo, existe ventana para manipular la BIOS de un Macbook mediante la visita de una web, abriendo un archivo de video o un documento. Si los elementos se alinean del modo adecuado la fatalidad puede llegar a morder la manzana y envenenarla.

Cualquier servicio de inteligencia hubiera cubierto de oro a Vilanças por tener exclusividad, sin embargo ahí tenemos la información y es de agradecer que todos los usuarios de un Macbook sepan que cuando su portátil se deshaga del abrazo del sueño y vuelva a mundo de los vivos puede que no sea el mismo. Es más puede que ya no sea ni suyo.

Propuso Goya que el sueño de la razón produce monstruos. Ahora sabemos que el despertar instala rootkits.

Más información:

The Empire Strikes Back Apple – how your Mac firmware security is completely broken




David García

Twitter: @dgn1729

sábado, 30 de mayo de 2015

Diversas vulnerabilidades en PHP

Recientemente el equipo de desarrollo de PHP ha publicado actualizaciones para las ramas 5.6, 5.5 y 5.4 de PHP para solucionar siete vulnerabilidades que pueden ser aprovechadas para provocar denegaciones de servicio e incluso comprometer los sistemas afectados.

Dos de las vulnerabilidades residen en el nucleo de PHP, una de denegación de servicio (con CVE-2015-4024), y una corrección de regresiones en versiones superiores a la 5.4 (con CVE-2015-4025). Un desbordamiento de entero en ftp_genlist() (CVE-2015-4022), pcntl_exec() no debería permitir caracteres "null" (CVE-2015-4026), también se ha actualizado pcrelib a la versión 8.37 (CVE-2015-2325, CVE-2015-2326) y por último una corrupción de memoría en phar_parse_tarfile cuando el nombre de archivo comienza con "null" (CVE-2015-4021)

Se recomienda actualizar a las nuevas versiones 5.6.9, 5.5.25 y 5.4.41 desde 

Más información:

PHP 5 ChangeLog



Antonio Ropero

Twitter: @aropero

viernes, 29 de mayo de 2015

Denegación de servicio en Cisco Wireless LAN Controller

Cisco ha anunciado el descubrimiento de un problema en sus dispositivos Wireless LAN Controller (WLC) que podría permitir a usuarios sin autenticar provocar condiciones de denegación de servicio.

El problema se debe a una validación insuficiente del tráfico de entrada. Un atacante remoto no autenticado podrá enviar tráfico TCP manipulado que provoque la caída del dispositivo afectado y de los puntos de acceso inalámbrico asociados.

La vulnerabilidad, con la referencia CVE-2015-0756, ha sido confirmada por Cisco. Afecta a los dispositivos con versiones de software 7.4.1.1. Los clientes de Cisco con contratos activos podrán obtener actualizaciones a través del Software Center en

Más información:

Cisco Wireless LAN Controller TCP Denial of Service Vulnerability




Antonio Ropero
Twitter: @aropero

jueves, 28 de mayo de 2015

Vulnerabilidad en Apache Cordova permite manipular aplicaciones Android

Se ha confirmado la existencia de una vulnerabilidad en el framework Apache Cordova que podría permitir a un atacante modificar el comportamiento de aplicaciones Android solo con pulsar un enlace. El alcance puede variar desde inyectar textos o popups, modificar funcionalidades básicas o inutilizar la aplicación.

Apache Cordova es un framework de licencia libre, desarrollado por la Apache Software Foundation, que incluye un gran número de APIs de diferentes dispositivos móviles. Cada vez es más usado por desarrolladores de aplicaciones móviles para acceder a funciones nativas de los dispositivos, como la cámara o el acelerómetro, empleando tecnologías web como HTML, CSS y JavaScript. El servicio es compatible con iOS, Android, Blackberry, Windows Phone, Palm WebOS, Bada y Symbian.

Trend Micro ha descubierto esta vulnerabilidad (con CVE-2015-1835) calificada como de gravedad alta y que afecta a todas las versiones de Apache Cordova hasta la 4.0.1. Esto significa que la mayoría de aplicaciones basadas en Cordova, que vienen a representar un 5,6% de todas las aplicaciones en Google Play, son propensas a sufrir un ataque.

Apache ha publicado un boletín de seguridad que confirma la vulnerabilidad, que podría permitir a un atacante modificar el comportamiento de aplicaciones Android a través de un exploit remoto si la víctima pulsa sobre un enlace malicioso.

La vulnerabilidad reside en la ausencia de valores explícitos establecidos en Config.xml en las aplicaciones Android desarrolladas con Cordova y a una característica que permite que las preferencias se puedan establecer desde fuera de la aplicación. Esta característica fue parte de una actualización de código publicada en noviembre de 2010, junto con la actualización de Cordova Android 0.9.3. Pero esto podrá permitir a un atacante inyectar contenido malicioso para alterar las características de la aplicación, bien desde servidores web remotos o desde aplicaciones locales comprometidas.

Trend Micro ha publicado una prueba de concepto y varios vídeos que muestran como basta acceder a una página web con el navegador para provocar diversos efectos, según las preferencias de la aplicación modificadas. En este ejemplo se muestra como se inyecta un cuadro de diálogo no deseado:

Otros vídeos muestran como insertar una pantalla de inicio, alterar el color de fondo de la aplicación basada en Córdova, manipular la configuración de pantalla de la aplicación o modificar la función básica del botón de volumen.

Apache recomienda que todas las aplicaciones desarrolladas con Cordova 4.0.x (o superior) se actualicen para usar la nueva versión 4.0.2 de Cordova Android. En caso de usar una versión anterior de Cordova, se recomienda la actualización del proyecto para usar la nueva versión 3.7.2, que también corrige el problema. Esta vulnerabilidad solo afecta a las aplicaciones Android, por lo que otras plataformas no necesitan actualizarse.

Más información:

Apache Cordova

Trend Micro Discovers Apache Cordova Vulnerability that Allows One-Click Modification of Android Apps

Apache Cordova Android 4.0.2 and 3.7.2 released


Antonio Ropero
Twitter: @aropero

miércoles, 27 de mayo de 2015

Vulnerabilidad en Flash Player explotada dos semanas después del parche

Hace dos semanas Adobe publicó uno de sus ya habituales parches para Flash Player. Los investigadores de FireEye han detectado un nuevo ataque que aprovecha una de las vulnerabilidades corregidas por dicha actualización.

El nuevo ataque está incluido dentro del ya conocido kit de exploits conocido como Angler. Está es una conocida herramienta utilizada para lanzar ataques masivos "drive-by-download", en los que principalmente infecta sistemas de forma transparente (sin intervención del usuario) a través de anuncios maliciosos incluidos sitios web legítimos.

En esta ocasión, se ha detectado que la vulnerabilidad con CVE-2015-3090 corregida el pasado 12 de mayo en la actualización de Adobe, ha empezado a explotarse a través de Angler apenas dos semanas después (el 26 de mayo).

No es la primera vez que ocurre esto. Los kits de exploits (particularmente Angler y Nuclear) aprovechan regularmente vulnerabilidades en Flash parcheadas recientemente. Según confirma FireEye, en marzo y abril estos kits también incluyeron una nueva vulnerabilidad descubierta ese mismo mes. Una tendencia que empieza a ser preocupante.

El exploit para CVE-2015-3090 implica una condición de carrera en la clase shader, en el que de forma asíncrona se modifica la anchura o altura de un objeto shader mientras se inicia un ShaderJob, lo que provoca una corrupción de memoria. Angler utiliza esto para ejecutar código arbitrario e infectar los sistemas sin parchear.

Los sistemas con versiones de Flash sin parchear podrán quedar infectados de forma transparente con solo visitar un sitio web que contenga el código malicioso; que puede ser introducido mediante un ataque directo o a través de un anuncio insertado en una red de publicidad. Los investigadores de FireEye han confirmado que el ataque se estaba empleado para instalar el troyano Bedep, involucrado en actividades de fraude por click.

Una vez más se evidencia la necesidad de mantener actualizados los sistemas y así como el software instalado.

Más información:

Angler EK Exploiting Adobe Flash CVE-2015-3090

una-al-dia (13/05/2015) Actualizaciones de seguridad para Adobe Reader, Acrobat y Flash Player

Security updates available for Adobe Flash Player

una-al-dia (27/01/2015) Nueva actualización de Adobe Flash Player

una-al-dia (06/02/2015) Adobe, más de lo mismo


Antonio Ropero
Twitter: @aropero


martes, 26 de mayo de 2015

Secretos, mentiras y recuperación de cuentas

Bajo el título de "Secretos, mentiras y recuperación de cuentas" Google ha publicado un interesante informe sobre la protección y recuperación de contraseñas basada en preguntas de seguridad.

Las preguntas secretas siempre han resultado un método polémico para la recuperación de contraseñas en caso de olvido de la contraseña empleada habitualmente. Las clásicas preguntas del nombre de tu mascota, la fecha de nacimiento, o el nombre de la pareja nunca han parecido un método muy seguro para proteger una contraseña. Son muchos los casos de famosos que han visto sus datos al descubierto porque alguien obtuvo su contraseña a través de este mecanismo.

La experiencia de los múltiples casos en los que se ha evidenciado la in-seguridad de las preguntas de recuperación de contraseñas debería ser un motivo para intentar buscar métodos alternativos. Pero por vez primera, se examinan datos "del mundo real" en base al propio despliegue en Google de preguntas de seguridad y cómo los usuarios recuerdan las respuestas. El análisis realizado por Google confirma que en general las preguntas secretas ofrecen un nivel de seguridad mucho más bajo que las contraseñas elegidas por el usuario. Debería ser al revés. La respuesta a la pregunta secreta debería considerarse como otra contraseña más, incluso más compleja que la principal si cabe.

Muchos usuarios tienden a pensar que las preguntas de seguridad son fiables porque las respuestas son fáciles de recordar, pero la investigación de Google demuestra que no suele ser así. No solo debido a que las respuestas son olvidadas con frecuencia, sino que además son susceptibles a otro tipo de ataques. Esto contribuye a la evolución de la autenticación de doble factor y códigos de verificación basados en SMS. Que se están afianzando como un método más rápido y más fiable de recuperación de contraseñas y autenticación.

Incluso, se afirma que una causa importante de esta inseguridad es que con frecuencia los usuarios no responden con veracidad. Una encuesta realizada por la propia Google a los usuarios reveló que una parte significativa de los usuarios (37%) admitió proporcionar respuestas falsas. El motivo de esta medida es que sean "más difícil de adivinar", aunque lo más sorprendente es que este comportamiento tiene el efecto contrario ya que la gente "endurece" sus respuestas de forma predecible.

Por el lado de la usabilidad, también se muestra que en contra de lo que cabría pensar inicialmente las respuestas secretas tienen un porcentaje de recuerdo bastante bajo, a pesar de la suposición de que la fiabilidad es lo que motiva su despliegue. De millones de intentos de recuperación de cuentas se observó una fracción significativa de los usuarios (40% de usuarios de habla Inglés de EE.UU.) no pudo recordar sus respuestas. Este porcentaje es mucho más bajo que la tasa de éxito con mecanismos de recuperación alternativos, como los códigos de restablecimiento por SMS (más de 80%).

Una de las conclusiones de Google es que parece casi imposible encontrar preguntas secretas que sean a la vez seguras y fáciles de recordar. Las preguntas secretas continuarán teniendo algún uso si se combinan con otras fórmulas, pero no deberían emplearse de forma única. Un buen procedimiento debería favorecer alternativas más fiables.

Más información:

Secrets, Lies, and Account Recovery:
Lessons from the Use of Personal Knowledge Questions at Google

una-al-dia (27/02/2005) La pregunta secreta del caso "Paris Hilton"

una-al-dia (22/09/2008) Ataques "magistrales" de "hackers" mediáticos


Antonio Ropero
Twitter: @aropero


lunes, 25 de mayo de 2015

Nuevas versiones de PostgreSQL corrigen tres vulnerabilidades

PostgreSQL ha publicado nuevas versiones para solucionar tres vulnerabilidades que podrían ser empleadas por atacantes autenticados para conseguir información sensible o provocar denegaciones de servicio. 

PostgreSQL es una base de datos relacional "Open Source", bastante popular en el mundo UNIX, junto a MySQL.

Esta actualización incluye correcciones para evitar una posible denegación de servicio cuando el cliente desconecta justo antes de que expire el tiempo de espera de autenticación (CVE-2015-3165). Algunas llamadas de la familia de la funciones *printf () son vulnerables a una divulgación de información si se consume toda la memoria en determinado momento (CVE-2015-3166). Se ha mejorado la detección de fallos en llamadas al sistema.

Por último, en contrib/pgcrypto al descifrar con una clave incorrecta se producen diferentes mensajes de error, esto podría ayudar a un atacante a recuperar llaves de otros sistemas (CVE-2015-3167).

De forma adicional, PostgreSQL recomienda a todos los usuarios que utilizan autenticación Kerberos, GSSAPI o SSPI asignen include_realm a 1 en pg_hba.conf, en versiones futuras esta será la configuración por defecto.

Además de estas vulnerabilidades se han solucionado más de 50 problemas no relacionados directamente con la seguridad.

Se han publicado las versiones PostgreSQL 9.4.2, 9.3.7, 9.2.11, 9.1.16 y 9.0.20 disponibles desde:

Más información:

PostgreSQL 9.4.2, 9.3.7, 9.2.11, 9.1.16, and 9.0.20 released!

E.1. Release 9.4.2

E.4. Release 9.3.7

E.12. Release 9.2.11

E.24. Release 9.1.16

E.41. Release 9.0.20


Antonio Ropero

Twitter: @aropero

domingo, 24 de mayo de 2015

Disponible en YouTube la conferencia Seguridad en comunicaciones móviles de David Pérez (Layakk), último vídeo del XI Ciclo de las Conferencias TASSI 2015

Se ha publicado en YouTube el vídeo de la conferencia "Seguridad en comunicaciones móviles", de David Pérez de Layakk, última conferencia del XI ciclo UPM TASSI 2015: 

Con este séptimo vídeo, se cierra la publicación en el canal YouTube de la Universidad Politécnica de Madrid de las conferencias del XI Ciclo TASSI de la asignatura Temas Avanzados en Seguridad y Sociedad de la Información, correspondiente al año 2015. Se incluyen los enlaces a todas las conferencias de este ciclo.

1. Vídeo de la conferencia "ULTRA: Enigma y Fish" de D. Román Ceano (Vector3)
Fecha: 19 de febrero de 2015

2. Vídeo de la conferencia "Memorias de un perito informático forense" de D. Lorenzo Martínez (Securízame)
Fecha: 26 de febrero de 2015

3. Vídeo de la conferencia "Hispasec. 16 años de seguridad informática" de D. Antonio Ropero (Hispasec)
Fecha: 5 de marzo de 2015

4. Vídeo de la conferencia "eCrime evolution" de D. Marc Rivero (Deloitte) y D. Dani Creus (Kaspersky)

5. Vídeo de la conferencia "Protección de las comunicaciones críticas por fibra óptica" de D. José María Marín y D. Fernando Barbero (FiberNet)
Fecha: 9 de abril de 2015

6. Vídeo de la conferencia "Malware en Android y Google Play" de D. Sergio de los Santos (Eleven Paths)
Fecha: 16 de abril de 2015

7. Vídeo de la conferencia "Seguridad en comunicaciones móviles" de D. David Pérez (Layakk)
Fecha: 23 de abril de 2015

La documentación utilizada por los ponentes puede descargarse desde Criptored:



Jorge Ramió Aguirre
Coordinador conferencias TASSI


sábado, 23 de mayo de 2015

Vulnerabilidades en Cisco Unified Communications Manager

Cisco ha confirmado múltiples vulnerabilidades en Cisco Unified Communications Manager (versión 10.5) que podría permitir a un atacante realizar ataques de cross-site scripting (XSS), cross-site request forgery (XSRF) y de phishing en los sistemas afectados.

La solución Unified Communications de Cisco es un conjunto de productos y aplicaciones de comunicaciones que reúne e integra voz, vídeo y datos. Cisco Unified Communications Manager es el componente de procesamiento de llamadas de la solución de telefonía IP de Cisco (Cisco IP Telephony).

Los problemas, con CVE-2015-0749, residen en una validación inadecuada de determinados parámetros pasados al software afectado. Esto podría permitir a un atacante remoto ejecutar código script arbitrario, lo que facilitaría realizar ataques de cross-site scripting (XSS), cross-site request forgery (XSRF) o construir ataques de phishing.

Se ve afectada la versión 10.5(2.10000.5). Los clientes de Cisco con contratos activos podrán obtener actualizaciones a través del Software Center en

Más información:

Cisco Unified Communications Manager Multiple Vulnerabilities



Antonio Ropero
Twitter: @aropero


viernes, 22 de mayo de 2015

Vídeo "Malware en Android y Google Play" de Sergio de los Santos en XI Ciclo Conferencias UPM TASSI 2015

Se encuentra disponible en el canal YouTube de la Universidad Politécnica de Madrid, la sexta conferencia del XI Ciclo UPM TASSI 2015, Temas Avanzados en Seguridad y Sociedad de la Información, de título "Malware en Android y Google Play", presentada el 16 de abril de 2015 en el Campus Sur de la Universidad Politécnica de Madrid por D. Sergio de los Santos, de Eleven Paths.

Acceso al vídeo de la conferencia:

Desde la sección conferencias TASSI del servidor de Criptored, puede descargar además la presentación en pdf utilizada por el ponente y las demás conferencias de este ciclo ya publicadas, así como las de años anteriores.

Presentación:

XI Ciclo TASSI:



Jorge Ramió Aguirre
Coordinador conferencias TASSI


jueves, 21 de mayo de 2015

Logjam, el hacedor de llaves en el reino de las cerraduras cobardes

Al pilar que sostiene la privacidad de nuestras comunicaciones le ha salido una nueva grieta que vuelve a amenazar la integridad y el secreto que percibimos como seguros. Un golpe a la criptografía bautizado Logjam que demuestra (otra vez) la fragilidad de un sistema vital para la confianza. Veamos en qué consiste Logjam.

https://weakdh.org/
En toda comunicación segura existe un momento crítico al principio de la conexión. Ambas partes han de ponerse de acuerdo en la clave que van a utilizar para el uso de cifrado simétrico. El problema no era sencillo, más teniendo en cuenta que el medio por el que iban a viajar los mensajes para coordinar la elección de dicha clave era y es hostil: Internet.

A mediados de los años setenta, aparte del éxito de las patillas de hacha y los pantalones de campana, unos científicos propusieron un método de intercambio de claves, aunque sería más apropiado decir "método de acuerdo de clave compartida", para solucionar el problema de intercambio inicial de mensajes entre dos partes a través de un canal inseguro. El método se conoce popularmente como Diffie-Hellman (si, suena a dúo de folk rock de los años 60), nombre derivado de sus autores: Whitfield Diffie y Martin Hellman. Según este último habría que añadir a Ralph Merkle como coautor del protocolo.

La base de este protocolo se basa en la dificultad de cálculo del logaritmo discreto de la forma g^a mod p, es decir, averiguar 'a'. Su análogo sería el problema de factorización de números primos que forma la base del algoritmo de clave pública RSA.

Diffie-Hellman se asienta en la forma que hemos visto: g^a mod p. Donde g y p son valores conocidos por ambas partes, es decir, no son valores secretos y pueden ser conocidos por todos. p es un número primo relativamente grande y g es una base matemáticamente relacionada con p (no vamos a profundizar en detalles). Pues bien, aun conociendo g y p, existe una dificultad computacional en hallar el exponente 'a', que es el secreto que va a añadir cada una de las partes.

La parte Alfa enviará a Bravo un valor que será A = g^a mod p. De manera correspondiente Bravo enviará a Alfa su contraparte: B = g^b mod p.

Ahora cada una de las partes tiene un valor que contiene el componente secreto de la otra.

La "magia" de todo esto es que volviendo a aplicar la fórmula sobre los valores intercambiados, ambos tendrán el mismo número, que llamaremos S:

Alfa hará esto:

S = B^a mod p

Bravo por su parte:

S = A^b mod p

Ese número 'S' será la clave "elegida" por ambos. Observemos que en ningún momento 'S' ha sido enviado por el canal, se trata de una derivación que ambas partes pueden hallar de manera común aplicando sus respectivos secretos sobre resultados "imposibles" de computar…hasta hoy…

Entonces llegó un grupo de investigadores de varias universidades junto con gente de la división de investigación y desarrollo de Microsoft. Pensaron que sería buena idea echarle un vistazo a esa tecnología setentera y ver como aguanta los avances en potencia de cálculo y algoritmos de 2015.

En primer lugar se las ingeniaron para lograr un nuevo ataque que degrada las conexiones TLS al uso de Diffie-Hellman en su versión "exportable" (DHE_EXPORT). Esta versión era la que estaba autorizada en los años 90 por la administración Clinton para productos que usaran tecnología de cifrado. Cómo no, esta versión usa primos de hasta 512 bits, una longitud que veremos es insuficiente. Con este ataque, que recuerda poderosamente a FREAK, se aseguraban que las conexiones seguras de una gran mayoría de clientes y servidores usarán Diffie-Hellman con 512 bits.

El siguiente paso era obtener una "base de datos" de cálculos ya efectuados de los primos más usados de 512 bits para esa versión descafeinada de Diffie-Hellman. Con los recursos de cálculo de una universidad, tardaron un par de semanas en obtener estas tablas precalculadas para los dos primos de 512 bits más usados.

Esos dos primos de 512 bits por cierto, son los usados por el servidor Apache y su módulo SSL (mod_ssl). Como ponen de ejemplo, el 8% del índice Alexa del top 1M HTTPS permite o soporta el uso de DHE_EXPORT y usan uno de estos dos primos de 512 bits en un 92% de casos.

Ahora ya solo les queda "escuchar" el resultado de g^a mod p, preguntar en su base de datos y calcular 'a'. Cuando obtienen la forma derivada g^ab mod p, donde 'ab' es la clave usada ya poseen el secreto para descifrar las comunicaciones.

Esto es un resumen a muy alto nivel del ataque. Os invitamos a leer la publicación del grupo de investigadores disponible aquí.

Algo que no pasó por alto al grupo era preguntarse hasta que punto era posible utilizar la misma técnica para valores de 768 y 1024 bits. Básicamente admiten que 768 bits puede alcanzarse de manera realista con una potencia de cálculo distribuido disponible en empresas y universidades y dejan los 1024 bits para organizaciones con muy buenos recursos y dedicados a estos menesteres de manera profesional, léase, la NSA por ejemplo.

No solo lo mencionan en la publicación que describe Logjam. El grupo de investigadores correlacionan directamente las filtraciones de Edward Snowden con la capacidad de la NSA para descifrar comunicaciones VPN usando este tipo de ataque. Casi nada.

¿Qué hacemos ahora? No nos queda otra opción. Es siempre la misma. Parchear y seguir adelante. Este no va a ser el último ataque a la criptografía, al secreto de las comunicaciones y a nuestra privacidad. Esto es una piedra más en el camino como tantas otras piedras llamadas FREAK, CRIME o POODLE y las que quedan por venir.

Por cierto, a los descubridores se les ha olvidado algo "importantísimo". Logjam no tiene un logo molón.

Más información:

Logjam

Imperfect Forward Secrecy:How Diffie-Hellman Fails in Practice

una-al-dia (03/03/2015) FREAK, un nuevo ataque a SSL/TLS

una-al-dia (15/10/2014) SSL tocado y hundido

una-al-dia (07/08/2013) Ataque BREACH, la seguridad HTTPS comprometida en 30 segundos



David García
Twitter: @dgn1729

miércoles, 20 de mayo de 2015

Apple publica la primera actualización para su reloj Apple Watch

Cuando ni siquiera está presente en España _ni en la mayoría de países_ el reloj inteligente de Apple, conocido como Apple Watch, ya recibe la primera actualización de su sistema operativo (Watch OS), con la que se solucionan hasta 13 vulnerabilidades.

Entre las vulnerabilidades corregidas se encuentra la ya famosa FREAK (CVE-2015-1067), conocida desde el pasado 3 de marzo y corregida por Apple en iOS y OS X el pasado 9 de marzo. Curiosamente el Apple Watch se presentó ese mismo día, aunque se puso a la venta en unas pocas tiendas de Apple el 24 de abril. Es decir, cuando el reloj salió a la venta ya incluía una vulnerabilidad grave de la que todo el mundo conocía los detalles.

También se han corregido otras dos vulnerabilidades de ejecución remota de código arbitrario, una al procesar fuentes maliciosas (CVE-2015-1093) y otra por una corrupción de la memoria del kernel (CVE-2015-1101).

También se han solucionado otras siete vulnerabilidades en el kernel, en Foundation, en IOHIDFamily y en IOAcceleratorFamily. Los problemas podrían permitir realizar ataques de denegación de servicio, obtener información sensible, elevar privilegios, redireccionar el tráfico o evitar filtros de red.

Esta actualización de Watch OS, a la versión 1.0.1, también incluye múltiples mejoras en el rendimiento del reloj, de Siri o de las aplicaciones de terceros. También se ha mejorado la interfaz y se incluyen los nuevos "emojis".

Esta actualización se debe instalar a través del iPhone. El reloj tiene que tener al menos un 50% de la batería cargada y estar conectado al cargador. Conectar el iPhone a la WiFi y mantenerlo cerca del reloj durante la actualización. En el iPhone, se debe abrir la aplicación Apple Watch y abrir My Watch > General > Software Update.

Más información:

About the security content of Watch OS 1.0.1
This document describes the security content of Watch OS 1.0.1.

una-al-dia (10/03/2015) Actualización de productos Apple incluye iOS y OS X

FREAK, un nuevo ataque a SSL/TLS



Antonio Ropero

Twitter: @aropero

martes, 19 de mayo de 2015

Google publica Chrome 43 y corrige 37 vulnerabilidades

Google anuncia una nueva versión de su navegador Google Chrome 43. Se publica la versión 43.0.2357.65 para las plataformas Windows, Mac y Linux, que junto con nuevas funcionalidades y mejoras, además viene a corregir 37 nuevas vulnerabilidades.

Como es habitual, Google solo proporciona información sobre los problemas solucionados reportados por investigadores externos o las consideradas de particular interés. En esta ocasión, aunque se han solucionado 37 nuevas vulnerabilidades, solo se facilita información de 14 de ellas (seis de gravedad alta, seis clasificados como media y dos de nivel bajo).

Escape de la Sandbox en Chrome. También se solucionan vulnerabilidades por uso después de liberar memoria en WebAudio, SVG, Speech y WebRTC. Salto de políticas de orígenes cruzados en DOM y en Editing. Desbordamiento del contenedor en SVG. Parámetro de tamaño negativo en Libvpx. Valor sin inicializar en PDFium. Falsificación de la barra de direcciones. Un valor sin inicializar en Blink. Descarga insegura del diccionario del corrector ortográfico y un Cross-site scripting en los marcadores. Los CVE asignados van del CVE-2015-1251 al CVE-2015-1264.

También del trabajo de seguridad interno, varias correcciones procedentes de auditoría interna, pruebas automáticas y otras iniciativas (CVE-2015-1265). Así como múltiples vulnerabilidades en V8 en la rama de 4.3 (actualmente 4.3.61.21).

Según la política de la compañía las vulnerabilidades anunciadas han supuesto un total de 38.337 dólares en recompensas a los descubridores de los problemas.

Esta actualización está disponible a través de Chrome Update automáticamente en los equipos así configurados o a través de "Información sobre Google Chrome" (chrome://chrome/).

Más información:

Stable Channel Update



Antonio Ropero

Twitter: @aropero

lunes, 18 de mayo de 2015

Múltiples vulnerabilidades en Moodle

Moodleha publicado ocho alertas de seguridad en las que se corrigen otras tantas vulnerabilidades con diversos efectos, desde los habituales cross-site scripting hasta obtención de información sensible o evitar controles de seguridad. Se ven afectadas las ramas 2.8, 2.7 y 2.6

Moodle es una popular plataforma educativa de código abierto que permite a los educadores crear y gestionar tanto usuarios como cursos de modalidad e-learning. Además proporciona herramientas para la comunicación entre formadores y alumnos.

Se han publicado ocho boletines de seguridad (del MSA-15-0018 al MSA-14-0025), y tienen asignados los identificadores comprendidos del CVE-2015-3174 al CVE-2015-3581. Dos de ellos son considerados como serios y el resto como de gravedad menor. Las vulnerabilidades podrían permitir ataques Cross Site Scripting (XSS), revelar información sensible o saltar controles de seguridad.

Las versiones 2.9, 2.8.6, 2.7.8 y 2.6.11 solucionan todas las vulnerabilidades. Se encuentran disponibles para su descarga desde la página oficial de Moodle.

Más información:

Security Announcements



Antonio Ropero
Twitter: @aropero


domingo, 17 de mayo de 2015

Actualizaciones de seguridad para Wireshark

Wireshark Foundation ha publicado siete boletines de seguridad que solucionan un total de ocho vulnerabilidades en las ramas 1.10 y 1.12.

Wireshark es una popular aplicación de auditoría orientada al análisis de tráfico en redes, que soporta una gran cantidad de protocolos y es de fácil manejo. Además Wireshark se encuentra bajo licencia GPL y disponible para la mayoría de sistemas operativos Unix y compatibles, así como Microsoft Windows.

Todos los errores de seguridad corregidos podrían llegar a provocar condiciones de denegación de servicio mediante la inyección en la red de paquetes maliciosos o bien engañando al usuario para que cargue ficheros de captura de tráfico de red manipulados.


Las vulnerabilidades se han solucionado en las versiones 1.10.14 y 1.12.5 ya disponibles para su descarga desde la página oficial del proyecto.

Más información:

wnpa-sec-2015-12 · LBMR infinite loop

wnpa-sec-2015-13 · WebSocket DoS

wnpa-sec-2015-14 · WCP dissector crash

wnpa-sec-2015-15 · X11 memory leak

wnpa-sec-2015-16 · Reassembly memory leak

wnpa-sec-2015-17 · IEEE 802.11 infinite loop

wnpa-sec-2015-18 · Android Logcat file parser crash



Antonio Ropero

Twitter: @aropero

sábado, 16 de mayo de 2015

Publicada la primera lección del nuevo curso de Criptografía con curvas elípticas en el MOOC de Crypt4you

Se ha publicado la primera lección del nuevo curso de Criptografía con curvas elípticas en el MOOC de Crypt4you, con el título "Criptosistemas basados en el problema del logaritmo discreto", de los autores Dr. Josep María Miret, Dra. Magda Valls y D. Javier Valera, pertenecientes al Grupo de Investigación Cryptography & Graphs de la Universitat de Lleida.

En ella sus autores nos muestran el funcionamiento del criptosistema ElGamal elíptico, analizando la generación de claves y algoritmos de cifrado y descifrado. También nos introducen a una de sus variantes más utilizadas, el cifrado ECIES, así como el algoritmo ECDSA de firma digital.

La lección cuenta con los siguientes capítulos:
Apartado 1.1. Ley de grupo en una curva elíptica
Apartado 1.2. Curvas elípticas sobre cuerpos finitos
Apartado 1.3. El problema del logaritmo discreto
Apartado 1.4. El criptosistema ElGamal
Apartado 1.5. El criptosistema ElGamal con curvas elípticas
Apartado 1.6. El criptosistema ECIES
Apartado 1.7. Curvas elípticas criptográficamente útiles
Apartado 1.8. El algoritmo DSA
Apartado 1.9. Firma digital con curvas elípticas
Apartado 1.10. Otros grupos criptográficamente útiles
Apartado 1.11. Ejercicios
Apartado 1.12. Referencias bibliográficas

El curso consta de tres lecciones más que se irán publicando durante este año 2015: Lección 2. Curvas elípticas en seguridad web; Lección 3. Criptografía con emparejamientos; Lección 4. Protocolos criptográficos con curvas elípticas.

Acceso directo a la primera lección: "Criptosistemas basados en el problema del logaritmo discreto":

Grupo de investigación Cryptography & Graphs:

Próximas lecciones de este curso y otros cursos disponibles en el MOOC Crypt4you:




Jorge Ramió Aguirre 

viernes, 15 de mayo de 2015

Mozilla Firefox 38 y soluciona 14 vulnerabilidades

La Fundación Mozilla ha anunciado la publicación de la versión 38 de Firefox, junto con 13 boletines de seguridad que corrigen hasta 14 vulnerabilidades en la nueva versión de su navegador (algunas de ellas también afectan al gestor de correo Thunderbird).

Los boletines de seguridad, desde MFSA2015-46 hasta MFSA2015-58, incluyen cinco de carácter crítico y otros tantos importantes, además de tres de importancia moderada y baja. Los errores que corrigen son los siguientes:

  • MFSA2015-46: dos errores de corrupción de memoria que podrían permitir la ejecución de código arbitrario (CVE-2015-2708 y CVE-2015-2709).
         
  • MFSA2015-47: un desbordamiento de memoria en Gstreamer al reproducir vídeo en formato H.264. Afecta únicamente a sistemas Linux (CVE-2015-0797).
        
  • MFSA2015-48: un error en SVGTextFrame al procesar gráficos SVG en combinación con determinados estilos CSS que podría conducir a la ejecución de código (CVE-2015-2710).
        
  • MFSA2015-49: error al ignorar las políticas de referencia (etiqueta <meta name="referrer">) cuando se abre un enlace desde el menú contextual o con el botón central del ratón (CVE-2015-2711).
         
  • MFSA2015-50: una lectura y escritura en memoria fuera de límites en 'asm.js' durante la validación de código JavaScript que podría permitir la ejecución de código arbitrario y revelación de información sensible (CVE-2015-2712).
        
  • MFSA2015-51: error en SetBreaks al acceder a objetos en memoria previamente liberada cuando la opción de texto en modo vertical se encuentra activada. Esto podría permitir la ejecución de código remoto  (CVE-2015-2713).
        
  • MFSA2015-52: error en Fennec al revelar información sensible de 'logcat' codificada en la URL. Esta vulnerabilidad con identificador CVE-2015-2714, solo afecta a sistemas Android 4.0 o anteriores.
         
  • MFSA2015-53: otro fallo de seguridad de uso de memoria tras liberación que podría permitir la ejecución de código remoto (CVE-2015-2715).
         
  • MFSA2015-54: un desbordamiento de memoria al procesar contenido XML comprimido que podría derivar en la ejecución de código (CVE-2015-2716).
          
  • MFSA2015-55: un desbordamiento de enteros en la librería 'libstagefright' cuando se procesan determinados metadatos en ficheros de vídeo MP4 podría posibilitar la ejecución de código (CVE-2015-2717).
         
  • MFSA2015-56: una falta de políticas de seguridad en el módulo 'WebChannel.jsm' al comprobar la procedencia de los mensajes 'webchannel' (CVE-2015-2718).
         
  • MFSA2015-57: un error en la implementación de 'Inter-process Communication' (ICP) al no existir validación de las comunicaciones entre procesos. Este fallo de seguridad, presente únicamente en sistemas Microsoft Windows, podría ser aprovechado para elevar privilegios (CVE-2011-3079).
        
  • MFSA2015-58: falta de comprobación de la ruta de 'updater.exe' al realizar una actualización que podría permitir una elevación de privilegios en sistemas Microsoft Windows (CVE-2015-2720).


La versión 38 de Firefox, que corrige todas las vulnerabilidades anteriormente comentadas, se encuentra disponible para su descarga a través de los canales habituales o mediante las actualizaciones automáticas.

Más información:

MFSA2015-46: Miscellaneous memory safety hazards (rv:38.0 / rv:31.7)

MFSA2015-47: Buffer overflow parsing H.264 video with Linux Gstreamer

MFSA2015-48: Buffer overflow with SVG content and CSS

MFSA2015-49: Referrer policy ignored when links opened by middle-click and context menu

MFSA2015-50: Out-of-bounds read and write in asm.js validation

MFSA2015-51: Use-after-free during text processing with vertical text enabled

MFSA2015-52: Sensitive URL encoded information written to Android logcat

MFSA2015-53: Use-after-free due to Media Decoder Thread creation during shutdown

MFSA2015-54: Buffer overflow when parsing compressed XML

MFSA2015-55: Buffer overflow and out-of-bounds read while parsing MP4 video metadata

MFSA2015-56: Untrusted site hosting trusted page can intercept webchannel responses

MFSA2015-57: Privilege escalation through IPC channel messages

MFSA2015-58: Mozilla Windows updater can be run outside of application directory



Juan José Ruiz