Archivos de etiquetas: linux

Datos sin encriptación durante actualización de aplicación Signal

Signal es una aplicación de comunicaciones que hace alarde en su capacidad de mensajería encriptada, el problema es que falla en aprovisionar esa misma protección cuando está realizando una actualización a la versión de escritorio desde su extensión de Chrome, debido a que exporta los mensajes del usuario como archivos de texto no encriptados.
Al actualizar Signal Desktop desde la extensión Signal Chrome, el proceso requiere que el usuario elija una ubicación para guardar los datos de mensajes (texto y adjuntos), con tal de importarlos automáticamente a la nueva versión.
Luego de este paso, el investigador de seguridad y hacker Matt Suiche se dió cuenta que la aplicación volcaba la información en una ubicación que él escogió sin encriptar los archivos antes. Él anunció su descubrimiento mediante Tweeter, además de realizar el reporte de fallos al fabricante. “Es completamente insano”, añadió, agregando una captura de pantalla que muestra los datos en texto plano volcados por Signal durante la actualización.

El directorio principal contiene distintos subdirectorios, uno para cada contacto distinto en Signal. Estos subdirectorios llevan el nombre del contacto y su número de teléfono. Junto con esto, sólo al ingresar a ellos podemos encontrar información sensible. Las conversaciones son almacenadas en el formato JSON (JavaScript Object Notation) sin encriptación ni ofuscamiento, de forma que es posible leer su contenido a simple vista.
Suiche realizó el hallazgo en macOS al recibir una notificación de actualización de la extensión de Signal para Chrome. En tests realizados por BleepingComputer en entorno Linux arrojó el mismo resultado. Tampoco hay advertencias de que el contenido se esta guardando sin encriptar, además de que esta información persiste en el disco duro una vez de que la actualización se completa y la nueva versión de Signal la importa. Los usuarios deben eliminar este subdirectorio manualmente para mitigar el riesgo de filtración de sus conversaciones privadas.
La extensión de Signal para Chrome se encuentra obsoleta. Signal ha estado disponible para teléfonos móviles desde un comienzo, pero debido a la conveniencia se requirió el desarrollo de una versión para computadores de escritorio, la cual apareció como una extensión de Chrome.
Esto significa que la aplicación de escritorio encriptaba sus comunicaciones sólo cuando Google Chrome se encontraba en ejecución. Desde octubre de 2017 existe una nueva variante como aplicación standalone, la cual desecha la interacción con Chrome. Además esto marcó el comienzo del fin para la aplicación de Chrome, la cual expira en menos de un mes.
El problema no es sólo con Signal Desktop. Deprecar una versión en favor de otra, no es motivo suficiente para dejar los datos sin encriptar siendo que el objetivo de este sistema es justamente la transmisión encriptada de conversaciones y archivos. Además se ha descubierto que Signal Desktop no remueve correctamente archivos que han sido adjuntos a mensajes que desaparecen (una funcionalidad que borra los mensajes luego de cierta cantidad de tiempo), ya que estos adjuntos se pueden encontrar en el sistema de archivos de todas formas
Fuente: https://www.bleepingcomputer.com/news/security/signal-upgrade-process-leaves-unencrypted-messages-on-disk/

Vulnerabilidad en todos los procesadores Intel, que hacer.

Diversos fabricantes han publicado parches e información de seguridad con la finalidad de mitigar estas vulnerabilidades, por lo que como proveedor de servicios de seguridad les hacemos llegar.
Esta semana se dio a conocer una vulnerabilidad en la arquitectura de todos los procesadores Intel, en resumen es un problema en el cual es posible acceder a sectores de memoria donde se guarda información del núcleo del Sistema Operativo.
Una falla fundamental en el diseño de los procesadores Intel está forzando el rediseño de los núcleos de Linux y Windows para evitar esta falla de seguridad a nivel de chip.
Programadores están en máxima capacidad para potenciar el núcleo de código abierto en el sistema de memoria virtual de Linux. Mientras se espera que Microsoft introduzca los cambios necesarios en sus Sistemas Operativos Windows el próximo martes de parchado.
Se estima que estas actualizaciones afecten el desempeño de los procesadores Intel. Estos efectos aún están bajo medición aunque se estima un impacto entre el 5% y el 30% en el desempeño.
La solución es básicamente separar la memoria del núcleo completamente de los procesos del usuario usando Kernel Page Table Isolation (KPTI), lo que recientemente fue posible revelar mediante un ataque denominado Forcefully Unmap Complete Kernel With Interrupt Trampolines (o F**KWIT) en el núcleo de Linux.
Cuando un programa necesita realizar cualquier acción como escribir un archivo o abrir una conexión de red, pasa el control temporalmente al procesador para que el núcleo realice la tarea. para realizar esta transición del usuario al núcleo y de vuelta lo mas rápida y eficientemente posible, el núcleo se presenta en todos los espacios de memoria virtual de los procesos, aún cuando no sea visible para los programas. Luego cuando se necesita el núcleo, el programa realiza una llamada al sistema, el procesador cambia al modo de núcleo y lo accede. Cuando está realizado, la CPU es indicada a volver al modo de usuario para re-entrar al proceso, mientras en el modo de usuario el código del núcleo y sus datos permanecen fuera de vista pero presentes en las tablas de paginación del proceso.
Los parches KPTI mueven el núcleo a una dirección completamente diferente a los procesos del usuario, de forma que no sea visible en absoluto. Con esto se pretende evitar que código maligno vulnere la protección mediante Kernel Adress Space Layout Randomization (KASLR). Este mecanismo de defensa usado por varios Sistemas Operativos para alojar componentes del núcleo en ubicaciones aleatorias en la memoria virtual.
Esto parece una buena solución, pero, los procesadores modernos realizan “ejecución especulativa”, al ejecutar una instrucción la CPU intenta predecir cual será la próxima instrucción que debe ejecutar, la prueba y si es válida la realiza. Hay una falta de seguridad en esta ejecución especulativa que al combinarse con lo anteriormente explicado permitiría eventualmente que un proceso a nivel de usuario pueda acceder directamente a instrucciones del núcleo y procesador, lo cual es peligroso.
¿Como afecta esto a usuarios Sophos?
El 3 de enero del presente año, Microsoft liberó un aviso de seguridad el cual incluye actualizaciones de emergencia para el problema, esto incluye contactar al fabricante de su Anti Virus para comfirmar que es compatible con el parche y a la vez definir una llave específica en el registro de Windows.
Sophos ha finalizado las pruebas de compatibilidad con la isntalación de este parche y con la modificaciáon del registro de Windows, confirmando de que no existen problemas de compatibilidad.
Sophos comenzará a agregar de forma automática la llave de registro a los siguientes productos de Sophos Endpoint y Server desde el 5 de enero de 2018:
Sophos Central Endpoints/Servers

Sophos Enterprise Console Endpoints/Servers

Preview subscriptionRecommended subscription

Sophos Endpoint StandaloneSophos Virtual Enviroment (SVE)UTM Managed EndpointsSophos Home

Los clientes que deseen aplicar el parche de inmediato, antes de que la actualización de Sophos lo realice automáticamente, pueden realizarlo de forma manual tal como se indica en el articulo de Microsoft https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/ADV180002.
Alternativamente es posible descargar y aplicar el parche sin la llave de registro.
Tome nota de que Microsoft indica que “además podría ser necesario instalar actualizaciones de firmware desde el fabricante de su dispositivo para protección adicional. Revise con el fabricante de su dispositivo para actualizaciones relevantes”. Para mayor información lea el artículo de Microsoft https://support.microsoft.com/en-us/help/4073119/windows-client-guidance-for-it-pros-to-protect-against-speculative-exe. Sophos recomienda que realice pruebas antes de aplicar actualizaciones de firmware en ambientes productivos.
Además Sophos se encuentra evaluando el impacto en sus productos como XG Firewall, UTM y otros appliances que ejecutan Linux y contienen procesadores Intel para asegurarse de que están debidamente protegidos antes esta vulnerabilidad.
Parches e información de otros fabricantes/proveedores:
https://support.f5.com/csp/article/K91229003

Vulnerabilidad en Linux, falla en Sudo permite a usuarios obtener privilegios de root

Una falla de alta severidad en Linux permitiría a un atacante con bajos privilegios obtener acceso completo como administrador de un sistema afectado. Esta vulnerabilidad se encuentra en el proceso “get_process_ttyname()”.

Sudo significa “superuser do!” (ejecutar como superusuario), es un programa de Linux y UNIX que permite a usuarios normales ejecutar comandos como superusuario (“root”), tal como agregar usuarios o realizar actualizaciones de sistema.

La falla reside en la forma que Sudo convierte la información “tty” desde el archivo de estatus de proceso en el sistema de archivos.

En equipos linux, sudo convierte el archivo /proc/[PID]/stat para determinar el numero de dispositivo tty del proceso.

Mientras los campos en el archivo son delimitados por espacios, es posible incluir un espacio en blanco en el campo 2 (inclusive un salto de linea) lo cual no es esperado por Sudo.

Para explotar esta falla, el usuario puede escoger un número de dispositivo que no exista actualmente en /dev. Si Sudo no encuentra el terminal bajo el directorio /dev/pts, ejecuta una busqueda BFS (en ancho) del /dev, el atacante entonces crea un link simbólico al nuevo dispositivo creado en un directorio con permisos de escritura como /dev/shm.

Este archivo será usado como el punto de entrada y salida estandard de comandos, es posible sobre-escribir un archivo arbitrario. Esto puede ser escalado para tener privilegios completos de root al sobre-escribir un archivo de confianza como /etc/shadow o /etc/sudoers.

Afecta a Sudo 1.8.6p7 hasta 1.8.20 y se le ha otorgado una severidad alta, ya está parchado en Sudo 1.8.20p1 y se aconseja actualizar a la última versión.

Ya existen parches para Red Hat, Debian y Suse.

Fuentes:

http://www.openwall.com/lists/oss-security/2017/05/30/16

https://www.sudo.ws/alerts/linux_tty.html

https://access.redhat.com/security/cve/cve-2017-1000367

https://security-tracker.debian.org/tracker/CVE-2017-1000367

https://www.suse.com/security/cve/CVE-2017-1000367/

Vulnerabilidad de ejecución remota en Samba (SambaCry)

Se realizó el hallazgo y confirmación de una vulnerabilidad crítica en Samba, cuya permanencia se calcula de hace 7 años. Se le ha llamado SambaCry

Samba es un software gratuito que permite acceder y utilizar archivos, impresoras y otros recursos compartidos en una intranet o en Internet. Está soportado por una gran variedad de sistemas operativos, como Linux, openVMS y OS/2. Está basado en los protocolos SMB (Server Message Block) y CIFS (Common Internet File System).

Esta vulnerabilidad (CVE-2017-7494) puede permitir la ejecución de código remoto mediante el envío de una librería compartida a un recurso que permita escritura, con tal que el servidor la cargue y ejecute.

Afecta a versiones desde Samba 3.5.0 (Marzo de 2010) y posteriores.

Existen parches para remediar esta vulnerabilidad en el sitio de Samba: https://www.samba.org/samba/ftp/patches/security/samba-4.6.3-4.5.9-4.4.13-CVE-2017-7494.patch. Además existen versiones actualizadas con esta vulnerabilidad corregida (4.6.4, 4.5.10 y 4.4.14).

RedHat, Ubuntu y Slackware ya han publicado parches para sus distribuciones.

Adicionalmente se recomienda modificar la configuración de Samba en el archivo <<smb.conf>> y luego reiniciar el servicio. El parámetro “nt pipe support” se debe deshabilitar:

<<nt pipe support = no>>

Esta vulnerabilidad se encuentra presente en más de 480.000 equipos ejecutando Samba mediante el puerto 445, por lo que se denomina como “la versión Linux de EternalBlue”, utilizado por el ransomware WannaCry.

Es simple de explotar, sólo se requiere agregar una línea de código para ejecutar código malicioso en el sistema vulnerable:

<< simple.create_pipe(“ruta/objetivo.so”) >>

Además ya existe en Metaexploit.

Fuentes:

https://lists.samba.org/archive/samba-announce/2017/000406.html

https://www.samba.org/samba/security/CVE-2017-7494.html