Esta semana en seguridad: Más información sobre WhatsApp, Nextcry, Hover To Crash y Android Permissions Bypass

Hay otro fallo de WhatsApp, pero en lugar de GIF maliciosos, esta vez se trata de archivos mp4 maliciosos. Facebook anunció la vulnerabilidad a finales de la semana pasada. Se ha publicado una actualización, por lo que primero hay que asegurarse de que WhatsApp esté actualizado. La advertencia de Facebook es un poco ligera en cuanto a los detalles, diciendo simplemente que un «desbordamiento del búfer basado en la pila» era posible como resultado de «analizar los metadatos de flujo elemental de un fichero mp4».

Poco después de que se anunciara el fallo, apareció un repositorio GitHub, con un archivo mp4 de prueba de concepto para CVE-2019-11931. (Gracias a [justtransit] en Reddit para el enlace.) No puedo probar fácilmente el fichero PoC, pero podemos echarle un vistazo para ver cuál es la vulnerabilidad. ¿Qué herramientas necesitamos para echar un vistazo? Un editor hexadecimal es un buen comienzo. Estoy usando GHex, simplemente porque estaba disponible y se instaló fácilmente en Fedora.

¿Ves el problema? Yo tampoco, al principio.

La otra herramienta que necesitamos es algo de documentación sobre cómo se supone que el formato mp4 debe ser formateado. El mp4 tiene una historia histórica, que desciende del formato QuickTime Movie de Apple. La documentación para desarrolladores de Apple fue bastante útil para aprender sobre el mp4. También hice referencia a un oscuro sitio web de geociudades archivado para responder a una pregunta específica que no estaba clara en la página de Apple.

Entonces, ¿qué está pasando en ese archivo mp4 PoC? Un archivo mp4 es un formato binario que contiene valores binarios y texto UTF. Generalmente tiene el formato de un entero de cuatro bytes sin signo que contiene el tamaño del campo, un campo UTF de cuatro bytes que contiene la etiqueta legible por el ser humano, y finalmente los datos binarios. Estos conjuntos de tamaño/etiqueta/datos se denominan átomos. Algunos átomos también contienen información adicional de cabecera, como bytes reservados para banderas e información de versión. Uno de los campos de átomos es el meta campo, usado para llevar información de metada. Este átomo se define como si contuviera al menos tres subátomos, hdlr, claves e ilist. A primera vista, el archivo PoC parece tener un meta átomo válido. Supongo que el analizador de WhatsApp fue engañado de la misma forma que yo fui engañado la primera vez que miré el archivo.

Al buscar datos sobre átomos mp4, descubrí una herramienta útil, AtomicParsley. Es un poco vieja, y la fuente necesitaba algunos retoques para conseguir que compilara. El esfuerzo valió la pena, ya que al ejecutar AtomicParsley sobre el archivo PoC se reveló inmediatamente el ataque. ¿Ves el problema ahora? El meta átomo sólo suma 117 bytes, pero contiene un átomo sin nombre de casi 7000 bytes de largo. Ese átomo sin nombre es en realidad el resto del archivo. ¿Qué está pasando, y por qué no es obvio cuando se mira el archivo en el editor hexadecimal?

Parece que tenemos un átomo de meta que contiene un átomo de hdlr. Tiene sentido, una longitud de cuatro bytes seguida de la etiqueta meta, y luego una longitud de cuatro bytes y la etiqueta hdlr. Lo que no es aparente es que el meta átomo se define como teniendo información adicional de cabecera. La información sobre el formato mp4 que encontré dice que después de la meta cadena, el archivo debería contener cuatro bytes nulos, reservados para un número de versión y tres bytes de banderas. Esto desplaza el análisis sintáctico del meta átomo cuatro bytes fuera de sincronización, y lo que parece ser otra etiqueta se interpreta en realidad como una longitud de campo. En lugar de una longitud de 33 bytes, ese átomo tiene un tamaño de 1,6 GB. Esto es obviamente más grande que el archivo en sí, por lo que AtomicParsley considera que el átomo tiene sólo 7095 bytes de longitud.

El anuncio de la vulnerabilidad llamó a la falla un desbordamiento del búfer basado en la pila. Generalmente se desencadenan al escribir demasiados datos en una variable de pila. Vamos a especular un poco sobre el aspecto de la vulnerabilidad. Una función responsable del análisis sintáctico de la cabecera de un archivo mp4 declara un array de caracteres que se almacena en la pila, por lo que no se utiliza malloc. Ese array se establece a una longitud que el autor considera «suficientemente larga», o incluso puede usar un array de longitud variable. En cualquier caso, los datos están en la pila. Es probable que este analizador haga una comprobación de cordura en el archivo mp4 antes de copiar los datos en los búferes apropiados. Esta comprobación de cordura puede simplemente confiar en la longitud declarada del meta-átomo, o puede haber sido engañado por el archivo casi correctamente formateado. De cualquier manera, a medida que se copian los datos, los cuatro bytes que faltan hacen que el resto del archivo se copie en esa matriz de pilas, que en realidad no es lo suficientemente grande para contenerlo. Los datos se copian sobre lo que sea que haya en la pila, sobrescribiendo la dirección de retorno y saltando la ejecución del programa a donde quiera un atacante.

Una vez que el comando de copia llega al final del archivo, probablemente se produce un error e intenta volver de la función actual. Dado que un atacante controla la dirección de retorno y puede escribir en la pila, esa llamada de retorno puede saltar directamente al código del atacante.

No está claro si este problema fue encontrado y revelado por [Kasif Dekel], el investigador que subió el PoC a GitHub, o si estaba siendo utilizado activamente en los ataques. Edición: He recibido confirmación en este punto. [Kasif Dekel], [Ronen Shustin] y [Kobi Hazak] estaban investigando activamente este fallo, pero antes de que finalizaran su investigación y revelaran la vulnerabilidad, WhatsApp la descubrió y parcheó de forma independiente. Los informes iniciales sobre este problema proceden de la India. Si alguno de ustedes tiene alguna información adicional sobre si esta vulnerabilidad se ha utilizado de forma salvaje, y en particular información sobre cómo obtener una muestra en vivo del mp4 malicioso, ¡por favor, háganmelo saber!


Nextcry Ransomware en Nextcloud

¿Recuerda el problema de NGINX del que hablamos a principios de este mes? Parece que múltiples instalaciones de Nextcloud eran vulnerables a ese ataque, y se está llevando a cabo activamente un ataque de rescate contra ellas. Nextcry cifra los archivos almacenados en la instancia de Nextcloud, y exige un poco más de 200 dólares de Bitcoin para su desencriptación. Sólo un recordatorio, esto no es una falla en Nextcloud en sí, pero siguiendo la documentación oficial de Nextcloud en un servidor NGINX resultó en un sistema vulnerable.


Mouseover to Crash

Este mes se ha solucionado un problema especialmente grave en Windows 8.1 y 10. Se descubrió una dll PE (Portable Executable) para bloquear el kernel de Windows al pasar el ratón sobre el archivo en el Explorador. Es posible que este error se pueda usar para leer la memoria protegida, pero lo desagradable de este problema radica en lo difícil que es deshacerse del archivo una vez descargado. Intentar eliminar el archivo malicioso también provocará el fallo del kernel. La gente de Tetrane utilizó este error como una oportunidad para mostrar sus herramientas, y hacer una inmersión profunda en el problema y en la solución de Microsoft.


La vulnerabilidad de la cámara de Android

Android utiliza actividades e intenciones para lanzar aplicaciones, y es posible que una aplicación envíe una intención de lanzar la actividad de otra aplicación. Esta funcionalidad es útil para muchos escenarios, pero puede tener consecuencias imprevistas, como que una aplicación pueda solicitar a la aplicación de la cámara que tome fotos o vídeo.

Imagine que descarga una aplicación que solicita acceso a su almacenamiento de archivos. Eso le da a una aplicación acceso a todas tus imágenes, videos, etc. Si está dispuesto a correr ese riesgo, el problema mencionado anteriormente permite que esa aplicación maliciosa tome fotos y vídeos, y luego acceda a esos archivos. No se trata de un ataque particularmente sutil: el dispositivo obviamente iniciará la aplicación de la cámara y hará el sonido normal del obturador mientras se toman las fotos. Los investigadores de Checkmarx que descubrieron el problema sugieren que un atacante inteligente esperaría hasta que el sensor de proximidad se activara. La grabación de un vídeo en ese estado probablemente captaría el audio de una llamada en curso, además de ser más difícil de notar para un usuario, ya que la mayoría de los teléfonos apagan la pantalla cuando el sensor de proximidad detecta una cara cercana.

El artículo de ArsTechnica incluye un comando ADB que puede ejecutar para comprobar si su dispositivo ha sido reparado. No está claro cuántos dispositivos han recibido las actualizaciones y es probable que algunos dispositivos más antiguos nunca lo hagan.


Disney Plus y el robo de cuentas

Disney ha lanzado su nuevo servicio de streaming, Disney+. Probablemente no debería ser una sorpresa que un gran número de cuentas hayan sido comprometidas y vendidas casi inmediatamente. Muchas de las cuentas de Disney+ fueron prepagadas por dos o tres años, lo que las convierte en atractivos objetivos.

Disney ha declarado que en realidad no sufrieron una brecha. Es probable que las cuentas fueran comprometidas a través de uno de varios métodos diferentes. La reutilización de la contraseña es la más simple. Otra posibilidad es el phishing y los anuncios que apuntan a páginas de inicio de sesión falsas. O tal vez los usuarios se conectaron a una máquina ya comprometida que capturó sus credenciales. En cualquier caso, el lanzamiento de Disney+ ha sido un poco accidentado, probablemente debido en gran parte a que el número de registros ha sido mayor de lo esperado.


Docker CP Escape

Docker ha demostrado ser invaluable como una forma de aislar procesos en un servidor. ¿Tiene un servicio de cara al público que le preocupa que pueda verse comprometido? Tíralo en un contenedor Docker, e incluso si se ve comprometido, el sistema operativo es seguro… en teoría. Anunciado el martes, CVE-2019-14271 permite a un atacante atrapar una imagen Docker y escapar del contenedor al sistema operativo de metal desnudo.

El concepto central de la falla gira en torno a los comandos administrativos que se ejecutan en un entorno chroot. Actualización rápida, chroot es un comando de Unix que cambia la carpeta raíz efectiva en la que se ejecuta un comando. En muchos sentidos, chroot es uno de los predecesores de la moderna contenedorización al estilo Docker. ¿Necesita arreglar un sistema Linux que no arranca? Chroot le permite configurar un entorno en el que puede ejecutar comandos en una máquina en funcionamiento, pero utilizando el sistema de archivos raíz de destino.

El comando cp docker usa chroot para ejecutar un binario de ayuda dentro de un contenedor docker determinado. El problema ocurre cuando ese binario carga la biblioteca libnss compartida. Ya se está ejecutando dentro de un chroot, ¡así que carga la biblioteca desde el contenedor docker! Un atacante podría simplemente reemplazar la biblioteca libnss de un contenedor con una versión maliciosa, y la próxima vez que se use cp acoplado para copiar un archivo de ese contenedor, el código del atacante se está ejecutando como root fuera del contenedor. Docker 19.03.1 corrige el problema, ¡así que asegúrese de estar actualizado!

Reflexión sobre una década de expansión del Hackerspace

Reflexión sobre una década de expansión del Hackerspace

Hace unos días me invitaron a una fiesta. Las invitaciones a fiestas siempre son buenas, y si puedo ir a ...
Leer Más
El desmontaje del dongle del tablero de mandos revela el hardware necesario para reducir las millas

El desmontaje del dongle del tablero de mandos revela el hardware necesario para reducir las millas

El progreso y la proliferación de las computadoras en las aplicaciones automotrices casi han convertido al mecánico de árboles de ...
Leer Más
El control remoto de la puerta clonada lo hace (ligeramente) mejor

El control remoto de la puerta clonada lo hace (ligeramente) mejor

¿Alguna vez hiciste algo sólo para ver si podías? Sí, eso pensamos. [serverframework] quería ver si podía clonar el control ...
Leer Más
¿Tienes correo?

¿Tienes correo?

La vida está llena de decisiones difíciles, como decidir si quieres ir al final del viaje para comprobar si ha ...
Leer Más
Mike Harrison sabe todo sobre los LED

Mike Harrison sabe todo sobre los LED

Conducir un LED y hacerlo parpadear es probablemente el primer proyecto que la mayoría de la gente habrá intentado cuando ...
Leer Más
Cómo entrar en los coches - Elegir su primer coche de proyecto

Cómo entrar en los coches – Elegir su primer coche de proyecto

El automóvil es un invento maravilloso, quizás uno de los más transformadores del siglo XX. Son máquinas que a menudo ...
Leer Más
Linux Fu: Depuración de los scripts de bash

Linux Fu: Depuración de los scripts de bash

Un reciente post sobre la depuración de construcciones me sorprendió. Hubo bastantes comentarios sobre cómo no necesitabas un depurador, siempre ...
Leer Más
La paleta de ping pong iluminada por el borde ilumina la lucha

La paleta de ping pong iluminada por el borde ilumina la lucha

y a sus compañeros les gusta soplar un poco de vapor de la hora del almuerzo en la mesa de ...
Leer Más
Esta semana en seguridad: VPNs, Patch Tuesday, y Saqueo

Esta semana en seguridad: VPNs, Patch Tuesday, y Saqueo

Recientemente se ha revelado un problema en las redes privadas virtuales de Unix, en las que un atacante podría secuestrar ...
Leer Más
Superconferencia Hackaday: Un ingeniero analógico se sumerge en la radiofrecuencia

Superconferencia Hackaday: Un ingeniero analógico se sumerge en la radiofrecuencia

Aquellos de nosotros que trabajamos con la electrónica normalmente llegamos al arte a través de una vía particular que dominamos ...
Leer Más
Charla de Supercon: Emily Velasco quiere que trabajes raro

Charla de Supercon: Emily Velasco quiere que trabajes raro

Emily Velasco parece deleitarse absolutamente con lo raro, y creemos que eso es maravilloso. Lo raro nos une. Si puedes ...
Leer Más
Actualizaciones del proyecto Antique Pocket Watch Antique Pocket Watch

Actualizaciones del proyecto Antique Pocket Watch Antique Pocket Watch

Aquí en Digital Lithium nos preocupamos un poco por los relojes. Tal vez sea la profunda conexión personal con un ...
Leer Más
¿Qué hora es en Marte?

¿Qué hora es en Marte?

El tiempo es complicado, y sólo empeorará cuando nos convirtamos en una especie multi-planeta. Afortunadamente, [Folkert van Heusden] tiene un ...
Leer Más
Creación de un escritorio de RV sin límites

Creación de un escritorio de RV sin límites

[Gabor Horvath] cree que incluso dos monitores son poco espacio para colocar sus ventanas correctamente. Por eso está construyendo un ...
Leer Más
DeepPCB enruta sus PCBs de KiCAD

DeepPCB enruta sus PCBs de KiCAD

Los ordenadores pueden escribir poesía, aunque no necesariamente pueden escribir buena poesía. Lo mismo puede decirse del enrutamiento de las ...
Leer Más
Si necesita una herramienta de medición, simplemente construya una herramienta de medición

Si necesita una herramienta de medición, simplemente construya una herramienta de medición

[Darlan Johnson] estaba trabajando en un proyecto que se podía llevar puesto y necesitaba una forma de medir el cambio ...
Leer Más
Portátil como si fuera 1979 con un Z80 de 16 núcleos en una FPGA

Portátil como si fuera 1979 con un Z80 de 16 núcleos en una FPGA

Cuando la vida te da una placa de desarrollo de FPGA ridículamente cara y muy potente, tu primera reacción puede ...
Leer Más
Una CPU RISC-V construida a partir de un rasguño en una FPGA

Una CPU RISC-V construida a partir de un rasguño en una FPGA

"La arquitectura RISC va a cambiarlo todo", por lo que [SHAOS] está construyendo este genial ordenador de estilo retro RISC-V ...
Leer Más
El fracaso de la semana: La cinta Z no es un sustituto de la soldadura

El fracaso de la semana: La cinta Z no es un sustituto de la soldadura

Aquí en Digital Lithium, vemos todo tipo de métodos de construcción mecánica. Algunos son impresionantemente sólidos y permanentes, mientras que ...
Leer Más
Fabricando su propio faro para espeleología

Fabricando su propio faro para espeleología

Una distinción importante entre los equipos utilizados para la espeleología, la escalada, el ciclismo y otras actividades al aire libre ...
Leer Más
De Fallar a Lamentarse: Púas para guitarra hechas con desechos impresos en 3D

De Fallar a Lamentarse: Púas para guitarra hechas con desechos impresos en 3D

Entre las impresiones fallidas y los diseños iterativos que necesitan unos cuantos intentos antes de que los claven, una cierta ...
Leer Más
Creación de Easy Glass Circuit Boards en casa

Creación de Easy Glass Circuit Boards en casa

Este consejo para crear placas de circuito de sustrato de vidrio en casa podría estar un poco más cerca de ...
Leer Más
Insecto robot sobrevive al aplastamiento

Insecto robot sobrevive al aplastamiento

Hay un viejo refrán que dice que "la mano es más rápida que el ojo, pero algo más lenta que ...
Leer Más
El Icosaedro brilla con lo mejor de ellos

El Icosaedro brilla con lo mejor de ellos

Los resplandores vienen en todas las formas y tamaños, y siempre estamos interesados en ver la multitud de formas diferentes ...
Leer Más
Estas lecciones se aprendieron en el diseño del recinto, pero van mucho más allá

Estas lecciones se aprendieron en el diseño del recinto, pero van mucho más allá

Foaly] ha estado trabajando duro en la fabricación de una cámara de largo alcance de código abierto a distancia, y ...
Leer Más
Kerry Scharfglass asegura sus cosas de IO

Kerry Scharfglass asegura sus cosas de IO

Todos hemos visto los naufragios de la seguridad de los dispositivos IO: esos aparatos que fallan tan espectacularmente que la ...
Leer Más
Un novato toma el desafío de SMD en Supercon

Un novato toma el desafío de SMD en Supercon

Los que visitan por primera vez Disneyworld suelen pensar ingenuamente que van a "hacer" el parque en tres días: un ...
Leer Más
Cómo imprimir en 3D su gemelo idéntico

Cómo imprimir en 3D su gemelo idéntico

Es posible pasar un fin de semana agradable recorriendo una ciudad con un recorte de cartón robado de algún expositor ...
Leer Más
Hacer trampa en los bolos, a la manera de los hackers

Hacer trampa en los bolos, a la manera de los hackers

Cualquier persona que haya ido alguna vez a una bolera sabrá la técnica preferida (pero ineficaz) para controlar telepáticamente una ...
Leer Más
Codificar los clásicos está llegando

Codificar los clásicos está llegando

Sentimos lástima por la juventud de hoy en día. Si pasas unas horas jugando a un videojuego moderno y decides ...
Leer Más

Deja un comentario