Una vulnerabilidad en el protocolo de red CAN BCM permitía la escalada de privilegios en el kernel de linux 

El día de ayer se dio a conocer información sobre una vulnerabilidad en el kernel de Linux y la cual ya está catalogada como CVE-2021-3609. Esta vulnerabilidad permite a un usuario local elevar sus privilegios en el sistema debido a una condición de carrera en la implementación del protocolo CAN BCM y se manifiesta en las versiones 2.6.25 a 5.13-rc6 del kernel de Linux.

El fallo se aprovecha debido a que el protocolo CAN BCM permite registrar su propio gestor de mensajes de la red de área del controlador (CAN) y conectarlo a una toma de red específica. Cuando llega un mensaje entrante, se llama a la función bcm_rx_handler() un atacante puede aprovechar una condición de carrera y forzar el cierre del socket de red al mismo tiempo que ejecuta bcm_rx_handler().

El problema viene cuando se cierra el socket y se llama a la función bcm_release(), en la que se libera la memoria asignada para las estructuras bcm_op y bcm_sock, que continúan usándose en el manejador bcm_rx_handler() que aún se está ejecutando, de esta manera surge una situación que conduce al acceso a un bloque de memoria ya liberado (use-after-free).

Este es un anuncio del error recientemente informado (CVE-2021-3609) en el protocolo de red CAN BCM en el kernel de Linux que van desde versión 2.6.25 a mainline 5.13-rc6.
La vulnerabilidad es una condición de carrera en net/can/bcm.c que permite escalada de privilegios a root. El problema fue informado inicialmente por syzbot y Norbert Slusarek demostró ser explotable.

El ataque se reduce a abrir dos sockets CAN BCM y vincularlos a la interfaz vcan. En el primer conector, se llama a sendmsg() con el indicador RX_SETUP para configurar el controlador para los mensajes CAN entrantes y en el segundo conector, se llama a sendmsg() para enviar un mensaje al primer conector.

Después de que llega el mensaje, se activa la llamada bcm_rx_handler() y el atacante toma el momento adecuado y cierra el primer socket, lo que conduce al lanzamiento de bcm_release() y al lanzamiento de las estructuras bcm_op y bcm_sock, aunque el trabajo de bcm_rx_handler() aún no se ha completado.

Al manipular el contenido de bcm_sock, un atacante puede anular un puntero a la función sk-> sk_data_ready (sk), redirigir la ejecución y, utilizando técnicas de programación orientada al retorno (ROP), sobrescribir el parámetro modprobe_path y hacer que su código se ejecute como root.

Cuando se utiliza la técnica ROP, el atacante no intenta colocar su código en la memoria, sino que opera sobre las piezas de las instrucciones de la máquina que ya están disponibles en las bibliotecas cargadas, terminando con una instrucción de retorno de control (como regla, estos son el final de la biblioteca funciones).

Los permisos necesarios para llevar a cabo un ataque pueden ser adquiridos por un usuario sin privilegios en contenedores creados en sistemas con espacios de nombre de usuario habilitados. Por ejemplo, los espacios de nombres de usuario se incluyen de forma predeterminada en Ubuntu y Fedora, pero no se activan en Debian y RHEL.

Mi intento de explotación se concentra en kernels con versión> = 5.4-rc1 desde la confirmación bf74aa86e111. No investigué sobre la explotación de núcleos más antiguos que 5.4-rc1 que usaba tasklets, sin embargo la explotación en kernels más antiguos también parece factible. 

Se menciona que el investigador que identificó la vulnerabilidad pudo preparar un exploit para obtener derechos de root en sistemas con kernels desde la versión 5.4 y posteriores, incluida la posibilidad de un ataque exitoso en Ubuntu 20.04.02 LTS.

El trabajo del exploit se reduce a construir una cadena de llamadas a bloques similares («gadgets») para obtener la funcionalidad requerida. El ataque requiere acceso para crear sockets CAN y una interfaz de red vcan configurada.

Finalmente se menciona que el problema aún persiste en la mayoría de las distribuciones, pero es cuestión de dias para que los parches correspondientes estén siendo liberados.

Si estás interesado en poder conocer más al respecto, puedes consultar el siguiente enlace.

from Linux Adictos https://ift.tt/3zGGbDZ
via IFTTT

Ubuntu Web 20.04.2 llega con nueva tienda, nueva web y despidiéndose momentáneamente de Anbox

Ubuntu Web 20.04.2

A mediados de noviembre de 2020, los desarrolladores que están detrás de Ubuntu Unity Remix lanzaron la primera versión de su otro proyecto. Lo otro en lo que están trabajando es en una alternativa a Chrome OS, una que está basada en Ubuntu y usa Firafox para ejecutar sus aplicaciones web. Esta tarde han lanzado la segunda entrega de este sistema operativo, un Ubuntu Web 20.04.2 que llega con novedades, pero también con una despedida temporal.

Parece que este sabor no oficial de Ubuntu aún está intentando dar con la mejor interfaz de usuario posible. La primera vez que lo probé tenía un panel inferior «tipo Windows», es decir, con el menú abajo a la izquierda, algunas aplicaciones ancladas y a la derecha la bandeja del sistema. Recientemente lo probé, lo actualicé y la imagen pasó a ser más GNOME, y ahora vemos la captura de cabecera en la que los iconos están centrados como parece que lo estarán en Windows 11, pero si descargamos la ISO de Ubuntu Web 20.04.2 vemos que el panel vuelve a sus orígenes.

Novedades de Ubuntu Web 20.04.2

Las novedades que se han incluido en esta segundo ISO se resumen en tres:

  • La Web Store se ha sustituido por la /e/ store  e incluye muchas más web-apps.
  • Se ha corregido el fallo que impedía que dash-to-panel se cargara.
  • Anbox se ha eliminado temporalmente por cambios recientes en el kernel que rompen la compatibilidad.

Hay otra novedad que no está relacionada con el sistema operativo en sí, sino en cómo presentarlo: han abierto la página ubuntu-web.org para poder acceder a cierta información, como sus redes sociales y unos enlaces desde donde se puede descargar Ubuntu Web 20.04.2 y cualquier versión futura.

Para que Ubuntu Web se convierta en una alternativa libre y real a Chrome OS aún le queda trabajo, en parte porque sus desarrolladores también trabajan en Ubuntu Unity, pero seguro que alguno agradecen que exista este sabor en el futuro.

from Linux Adictos https://ift.tt/35Ge4a4
via IFTTT

SLSA, un framework de Google para proteger contra ataques a la cadena de suministro de software

Los desarrolladores de Google presentaron «SLSA» (Supply-chain Levels for Software Artifacts) el cual tiene la finalidad de encargarse de la protección de la infraestructura de desarrollo de los ataques llevados a cabo en la etapa de codificación, prueba, construcción y distribución de un producto.

Los desarrolladores mencionan que los procesos de desarrollo son cada vez más complejos y dependientes de herramientas de terceros, lo que crea condiciones favorables para la promoción de ataques relacionados no con la identificación y explotación de vulnerabilidades en el producto final, sino con el compromiso del proceso de desarrollo en sí.

Sobre SLSA

Se menciona que SLSA se centra en los siguientes dos principios fundamentales:

No unilateral: ninguna persona puede modificar el artefacto de software en ninguna parte de la cadena de suministro de software sin una revisión explícita y la aprobación de al menos otra «persona de confianza». [^ 1] El propósito es la prevención, disuasión o detección temprana de riesgos / malos cambios.

Auditable: el artefacto de software se puede rastrear de forma segura y transparente hasta las fuentes y dependencias originales, legibles por humanos. El propósito principal es el análisis automatizado de fuentes y dependencias, así como investigaciones ad-hoc.

Para bloquear las amenazas marcadas, SLSA ofrece un conjunto de pautas y herramientas para automatizar la creación de metadatos para la auditoría. SLSA resume los métodos de ataque comunes e introduce el concepto de capas de protección.

Cada capa tiene requisitos de infraestructura específicos para garantizar la integridad de los artefactos utilizados en el desarrollo, es decir, cuanto mayor sea el nivel de SLSA admitido, más defensas se implementarán y mejor estará protegida la infraestructura de los ataques típicos.

Nivel SLSA 1

En este nivel requiere que el proceso de compilación esté completamente automatizado y genere metadatos («procedencia») sobre cómo se recopilan los artefactos, incluida la fuente, la dependencia y la información del proceso de compilación (se proporciona un generador de metadatos de muestra para la auditoría para las acciones de GitHub). SLSA 1 no incluye elementos de protección contra cambios maliciosos, sino que solo identifica el código de la forma más sencilla y proporciona metadatos para la gestión de vulnerabilidades y el análisis de riesgos.

Nivel SLSA 2

Aquí se extiende la primera capa al requerir el uso de un sistema de control de fuente y servicios de construcción que generan metadatos autenticados. El uso de SLSA 2 permite rastrear el origen del código y evita cambios no autorizados en el código, en el caso de utilizar servicios de ensamblaje confiables.

Nivel SLSA 3

Desde este punto se confirma que el código fuente y la plataforma de compilación cumplen los requisitos de los estándares para garantizar que el código se pueda auditar y que se garantice la integridad de los metadatos proporcionados. Se supone que los auditores pueden certificar plataformas para el cumplimiento de los requisitos de las normas.

Nivel SLSA 4

Este es el nivel más alto y que además complementa los niveles anteriores añadiendo los requisitos mucho más estrictos de los cuales son la revisión obligatoria de todos los cambios por dos desarrolladores diferentes, asi como tambien que todos los pasos de compilación, el código y las dependencias deben declararse por completo, todas las dependencias deben desprotegerse y comprobarse por separado, y el proceso de compilación debe realizarse sin conexión.

Al usar un proceso de compilación repetible tambien se brinda la capacidad de repetir el proceso de compilación y de asegurar de que el ejecutable se compile a partir de las fuentes proporcionadas.

Además de ello este marco tiene en cuenta 8 tipos de ataques relacionados con amenazas de introducir cambios maliciosos en la etapa de desarrollo, compilación, prueba y distribución del código del producto.

Los tipos de ataque que se tienen de cuenta son los siguientes:

1.- Inclusión en el código fuente de cambios que contienen backdoors o errores latentes que conducen a vulnerabilidades.

2.- Compromiso de la plataforma de control de fuente.

3.- Realizar cambios en la etapa de transferencia de código al sistema de compilación o integración continua (se recopila el código que no corresponde al código del repositorio).

4.- Compromiso de la plataforma de construcción

5.- Promoción de códigos maliciosos a través de dependencias de baja calidad.

6.- Cargando artefactos no generados en el sistema CI/CD.

7.- Compromiso del repositorio de paquetes.

8.- Confusión en el usuario para instalar el paquete incorrecto.

Finalmente si deseas conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/3cTnTp5
via IFTTT

Debian 10.10 introduce parches de seguridad, kernel actualizado y la última versión de FWUPD

Debian 10.10

Con el punto de mira puesto en el lanzamiento de Bullseye y tras la anterior actualización de punto v10.9, el proyecto de este robusto sistema operativo padre y abuelo de muchos otros ha lanzado hace unas horas Debian 10.10. Como siempre, recuerdan que no es una nueva versión, sino que lo que hay disponible son nuevas imágenes de CD y que todo lo incluido en 10.10 ha llegado como actualización o lo hará muy pronto a los usuarios existentes.

Como todas las actualizaciones de punto del sistema operativo que desarrolla este proyecto, Debian 10.10 ha llegado para seguir corrigiendo los errores del Buster que fue lanzado hace poco menos de dos años. Y es que esa es una de las tarjetas de visita de Debian: un sistema con software menos actualizado, pero muy robusto por una filosofía conservadora en la que todo lo que incluyen está más que probado y se pasan el resto del tiempo mejorando lo existente.

Algunas novedades de Debian 10.10

Entre las novedades o correcciones que ha incluido Debian 10.10, tenemos:

  • Sincronización con la última versión estable de FWUPD.
  • Actualización a la ABI de Linux 4.19.0-17.
  • Nueva versión de shim para sistemas UEFI y otras correcciones.
  • Actualizaciones de seguridad distribuidas en mucho software que abarca desde Firefox ESR hasta Docker.io, OpenSSL, Curl y otros paquetes comunes.

Las nuevas imágenes de Debian 10.10 están disponibles en este enlace. Como hemos explicado, v10.10 no es una versión totalmente nueva, por lo que no es necesario que los usuarios existentes reinstalen o hagan una instalación de cero.

Teniendo en cuenta los plazos, no se sabe cuál será la próxima versión de Debian, pero es más que probable que sea v10.11. Debian 11 entrará en la «full freeze» en aproximadamente un mes, y no se conocerá la fecha de lanzamiento de la versión estable hasta poco antes de que se produzca.

from Linux Adictos https://ift.tt/3zHZe0u
via IFTTT

Piepacker: juegos retro online multijugador

Piepacker

Existen multitud de emuladores para Linux y Raspberry Pi, como sabrás, y con los que poder recuperar títulos retro de esas ROMs de videojuegos que jamás pasan de moda. Pero si te encantan los clásicos, también deberías conocer la plataforma Piepacker. Se trata de un servicio online de streaming para juegos que se ejecutarán desde la nube para que puedas jugar con quien quieras, como NVIDIA GeForce Now o como Google Stadia, y similares, pero dedicado a los retro…

Además, la novedad es que Piepacker está ahora disponible como un servicio Beta abierto y es gratuito por ahora para todos. Permite jugar ya a más de 60 videojuegos retro (plataformas, pinball, lucha, deportes,…) que tiene en su catálogo que se va expandiendo con frecuencia, aunque solo funciona con navegadores basados en Chromium por el momento (con el tiempo soportará también Firefox).

Además de divertirte con todos esos videojuegos retro de forma fluida, Piepacker también te permite disponer de un chat de voz y vídeo, con soporte para mandos controladores modernos. Así podrás jugar con tus mandos favoritos y comunicarte con otros compañeros de juego simultáneamente.

Evidentemente, aún no es perfecto. Ten en cuenta que es una versión Beta del servicio. Pero para ser gratuito no se le pueden poner demasiadas pegas. Poco a poco irán mejorando el soporte para navegadores web y también algunos detalles de la interfaz que aún se nota que deben pulir. Pero, a parte de esos detalles, funciona muy bien y no hay problemas evidentes.

Para poder acceder y comenzar a disfrutar desde ya de todos los juegos retro, tan solo tienes que entrar en la web oficial de Piepacker, registrarte desde este enlace con tu correo electrónico y contraseña, y una vez confirmada, podrás abrir sesión y empezar a disfrutar de todas sus ventajas…

Más información de Piepacker – Web Oficial

from Linux Adictos https://ift.tt/3zEwiqd
via IFTTT

Los once mejores juegos de estrategia gratis para Android

Los once mejores juegos de estrategia gratis para Android

Hay quienes prefieren los juegos de acción en los que aniquilar a los enemigos a base de fuerza bruta, quienes prefieren que el juego tenga más elementos tácticos y quienes quieren ambas cosas a la vez. Para todos ellos, hemos seleccionado los mejores juegos de estrategia gratis que encontrarás en Google Play.

No estamos hablando de estrategia en tiempo real -que encontrarás algunos en la lista- sino en un término más amplio. Espera por tanto encontrar también juegos Tower Defense, de cartas, juegos de mesa y otros. Todos ellos gratis, aunque tengan pagos integrados para comprar ítems.


Continue reading