Lanzamiento de OpenBSD 7.4

Se ha lanzado la versión del sistema operativo de código abierto similar a UNIX, OpenBSD 7.4. El proyecto OpenBSD fue fundado por Theo de Raadt en 1995 tras un conflicto con los desarrolladores de NetBSD, que resultó en el cierre del acceso de Theo al repositorio CVS de NetBSD. Después de esto, Theo de Raadt junto con un grupo de personas afines creó un nuevo sistema operativo abierto basado en el árbol de código fuente de NetBSD, cuyas principales metas de desarrollo fueron la portabilidad (se admiten 13 plataformas de hardware), la estandarización, el funcionamiento correcto, la seguridad proactiva y medios criptográficos integrados. El tamaño de la imagen ISO de instalación completa del sistema base OpenBSD 7.4 es de 630 MB.

Además del propio sistema operativo, el proyecto OpenBSD es conocido por sus componentes, que se han difundido en otros sistemas y se han consolidado como algunas de las soluciones más seguras y de mayor calidad. Entre ellos se encuentran: LibreSSL (fork de OpenSSL), OpenSSH, el filtro de paquetes PF, demonios de enrutamiento OpenBGPD y OpenOSPFD, servidor NTP OpenNTPD, servidor de correo OpenSMTPD, multiplexor de terminal de texto (análogo a GNU screen) tmux, demonio identd con implementación del protocolo IDENT, alternativa BSDL al paquete GNU groff — mandoc, protocolo para la organización de sistemas tolerantes a fallos CARP (Common Address Redundancy Protocol), servidor http liviano, herramienta de sincronización de archivos OpenRSYNC.

Principales mejoras:

  • Para las arquitecturas amd64 e i386 se han añadido componentes para actualizar el microcódigo de los procesadores AMD. Las nuevas versiones del microcódigo se instalan automáticamente al arrancar. Para la distribución de los archivos binarios con el microcódigo se ha preparado un puerto "ports/sysutils/firmware/amd". La instalación del nuevo microcódigo se realiza a través de la utilidad estándar fw_update. Un soporte similar para la actualización del microcódigo de los procesadores Intel se implementó en 2018 y se ofreció en la versión OpenBSD 6.3.
  • Para el núcleo y el espacio de usuario se han incluido mecanismos de protección IBT (Indirect Branch Tracking, amd64) y BTI (Branch Target Identification, arm64), diseñados para bloquear la violación del orden normal de ejecución (control flow) como resultado de la explotación de exploits que modifican los punteros a funciones almacenados en memoria (la protección implementada no permite que el código malicioso salte a la mitad de una función).
  • En sistemas con arquitectura arm64, se ha habilitado la autenticación de punteros (Pointer Authentication) para proteger el espacio de usuario. La tecnología permite utilizar instrucciones especializadas de ARM64 para verificar las direcciones de retorno mediante firmas digitales almacenadas en los bits superiores no utilizados del propio puntero.
  • La configuración del compilador del sistema clang, así como clang y gcc de los puertos, se ha modificado para aplicar los mecanismos de protección mencionados anteriormente, lo que ha fortalecido significativamente la seguridad de todas las aplicaciones básicas y la mayoría de las aplicaciones de los puertos contra exploits que utilizan métodos de programación orientada a retorno (ROP - Return-Oriented Programming). Al usar la técnica ROP, el atacante no intenta colocar su código en la memoria, sino que opera fragmentos de instrucciones de máquina ya existentes en las bibliotecas cargadas, que terminan con una instrucción de retorno del control (generalmente, estas son las terminaciones de funciones en bibliotecas). El trabajo del exploit se reduce a construir una cadena de llamadas a bloques similares (“gadgets”) para obtener la funcionalidad deseada.
  • Se ha añadido una nueva llamada al sistema kqueue1, que se diferencia de kqueue en la transmisión de banderas. En este momento, kqueue1 solo soporta la bandera O_CLOEXEC (close-on-exec) para cerrar automáticamente los descriptores de archivo en el proceso hijo después de la llamada a exec().
  • Para las arquitecturas amd64 e i386, se ha implementado soporte para el pseudodispositivo dt para organizar la trazabilidad dinámica del sistema y las aplicaciones. Se ha añadido una llamada al sistema utrace para insertar registros de usuario en el log ktrace.
  • Se han transferido correcciones de FreeBSD que eliminan el comportamiento indefinido al usar sistemas de archivos MS-DOS.
  • Se ha deshabilitado la opción de montaje softdep, utilizada para la escritura de metadatos agrupados diferidos.
  • A los programas protegidos mediante la llamada al sistema unveil se les permite guardar core dumps en el directorio de trabajo actual.
  • Para la arquitectura ARM64 se ha habilitado la posibilidad de entrar en estados de inactividad profunda (idle), disponibles en los chips Apple M1/M2, para ahorrar energía y realizar el modo de espera.
  • Se ha añadido una protección de bypass contra la vulnerabilidad Zenbleed en los procesadores AMD.
  • Se ha mejorado el soporte para sistemas multiprocesador (SMP). Se han eliminado bloqueos de la función arprequest(), el código de procesamiento de paquetes ARP entrantes y la implementación de la determinación de nodos vecinos en la pila IPv6.
  • La interfaz de sincronización de la tabla del filtrado de paquetes pfsync ha sido reescrita para mejorar el funcionamiento con bloqueos y la compatibilidad con futuras labores de paralelización de la pila de red.
  • La implementación del marco drm (Direct Rendering Manager) está sincronizada con el núcleo de Linux 6.1.55 (la versión anterior fue 6.1.15). Se ha mejorado el rendimiento en sistemas con procesadores Intel basados en la microarquitectura Alder Lake y Raptor Lake.
  • Se han realizado mejoras en el hipervisor VMM. En vmd se ha implementado el soporte para un modelo multiprocesador para dispositivos virtio de bloques y de red. Se ha añadido soporte para entrada/salida vectorial en modo zero-copy en el dispositivo virtio de bloques. Se restringe el acceso de los sistemas invitados a los modos p-state de los procesadores AMD. A los propietarios máquinas virtuales se les permite sobrescribir el núcleo de arranque mediante vmctl.
  • Se ha añadido un nuevo archivo de encabezado uchar.h con los tipos char32_t y char16_t, y las funciones c32rtomb(), mbrtoc32(), c16rtomb() y mbrtoc16(), definidas en el estándar C11.
  • Se ha añadido una opción "D" a la función malloc para identificar fugas de memoria utilizando ktrace ("MALLOC_OPTIONS=D ktrace -tu program") y kdump ("kdump -u malloc …").
  • Se ha añadido soporte para la variable ${.VARIABLES} en la herramienta make para mostrar los nombres de todas las variables globales establecidas.
  • Se ha añadido la opción "-u" a la herramienta kdump para seleccionar los puntos de seguimiento utrace por una etiqueta dada.
  • Se han añadido las opciones "—size-only" y "—ignore-times" a la herramienta openrsync.
  • Se ha añadido soporte para desplazamientos aleatorios en cron y crontab al especificar rangos de valores con un paso dado, lo que permite evitar solicitudes simultáneas de recursos desde diferentes máquinas que tienen reglas idénticas en cron. Por ejemplo, especificar "0~59/30" o "~/30" en el campo de minutos provocará que el comando se ejecute dos veces por hora en intervalos secuencialmente seleccionados al azar.
  • Se ha añadido a la herramienta wsconsctl la capacidad de mapear botones para pulsaciones de dos o tres dedos en el touchpad.
  • Se ha añadido soporte para nuevo hardware y se han incluido nuevos controladores.
  • Se ha mejorado la instalación en sistemas con procesadores armv7 y arm64.
  • Se ha añadido soporte para cargar archivos desde la partición del sistema EFI (EFI System Partition).
  • El instalador ha mejorado el soporte para RAID por software (softraid). Se ha añadido la posibilidad de ubicar la partición raíz en softraid en sistemas riscv64 y arm64. Softraid se ha añadido al ramdisk para la arquitectura powerpc64. Se ha implementado soporte para el cifrado de discos en arm64 (Guided Disk Encryption).
  • A la función malloc se le ha añadido la verificación de todos los bloques en la lista de liberación diferida de memoria para detectar situaciones de escritura en áreas de memoria liberadas.
  • Para ejecutar el comando shutdown, ahora se requiere agregar al usuario al grupo «_shutdown», lo que permite separar los permisos relacionados con el apagado y la lectura directa de dispositivos de disco.
  • A través de la llamada al sistema unveil, la herramienta patch limita el acceso solo al directorio actual, al directorio de archivos temporales y a los archivos enumerados en la línea de comandos.
  • Se ha añadido sysctl net.inet6.icmp6.nd6_queued para mostrar el número de paquetes que esperan respuesta ND6 (de manera similar a ARP).
  • Al configurar una dirección IPv6 en la interfaz de red, se asegura el envío de anuncios a los enrutadores vecinos a la dirección multicast.
  • Se ha añadido soporte inicial para TSO (TCP Segmentation Offload) y LRO (TCP Large Receive Offload) para el procesamiento de segmentos y la combinación de paquetes en el lado de la tarjeta de red.
  • Se ha acelerado la carga desde el núcleo de las reglas del filtro de paquetes pf mediante la herramienta pfctl. Se ha habilitado el procesamiento de acciones «keep state» y «nat-to» para los mensajes de error devueltos a través de ICMP.
  • Se ha desactivado el cálculo de sumas de verificación de IP, TCP y UDP para interfaces loopback.
  • Se ha añadido soporte inicial VPN para IPsec, dependiente de la enrutación (route-based).
  • Se ha añadido soporte para Flowspec en bgpd (RFC5575, actualmente solo se admite el anuncio de reglas flowspec). La implementación de ASPA (Autonomous System Provider Authorization) se ha alineado con las especificaciones draft-ietf-sidrops-aspa-verification-16 y draft-ietf-sidrops-aspa-profile-16, y se ha trasladado a utilizar tablas de búsqueda que no dependen de AFI (Address Family Indicator).
  • El rendimiento del rpki-client se ha incrementado en un 30-50%. Se ha añadido soporte para compresión gzip y deflate.
  • Se han actualizado los paquetes LibreSSL y OpenSSH. Se puede consultar un resumen detallado de las mejoras en las reseñas de LibreSSL 3.8.0, OpenSSH 9.4 y OpenSSH 9.5.
  • El número de puertos para la arquitectura AMD64 es de 11845 (anteriormente 11764), para aarch64 es de 11508 (anteriormente 11561), y para i386 es de 10603 (anteriormente 10572). Entre las versiones de aplicaciones en los puertos:
    • Asterisk 16.30.1, 18.19.0, 20.4.0
    • Audacity 3.3.3
    • CMake 3.27.5
    • Chromium 117.0.5938.149
    • Emacs 29.1
    • FFmpeg 4.4.4
    • GCC 8.4.0 y 11.2.0
    • GHC 9.2.7
    • GNOME 44
    • Go 1.21.1
    • JDK 8u382, 11.0.20 y 17.0.8
    • KDE Applications 23.08.0
    • KDE Frameworks 5.110.0
    • Krita 5.1.5
    • LLVM/Clang 13.0.0 y 16.0.6
    • LibreOffice 7.6.2.1
    • Lua 5.1.5, 5.2.4, 5.3.6 y 5.4.6
    • MariaDB 10.9.6
    • Mono 6.12.0.199
    • Mozilla Firefox 118.0.1 y ESR 115.3.1
    • Mozilla Thunderbird 115.3.1
    • Mutt 2.2.12 y NeoMutt 20230517
    • Node.js 18.18.0
    • OpenLDAP 2.6.6
    • PHP 7.4.33, 8.0.30, 8.1.24 y 8.2.11
    • Postfix 3.7.3
    • PostgreSQL 15.4
    • Python 2.7.18, 3.9.18, 3.10.13 y 3.11.5
    • Qt 5.15.10 y 6.5.2
    • R 4.2.3
    • Ruby 3.0.6, 3.1.4 y 3.2.2
    • Rust 1.72.1
    • SQLite 3.42.0
    • Shotcut 23.07.29
    • Sudo 1.9.14.2
    • Suricata 6.0.12
    • Tcl/Tk 8.5.19 y 8.6.13
    • TeX Live 2022
    • Vim 9.0.1897 y Neovim 0.9.1
    • Xfce 4.18
  • Se han actualizado los componentes de terceros incorporados en OpenBSD 7.3:
    • Stack gráfico Xenocara basado en X.Org 7.7 con xserver 21.1.8 + parches, freetype 2.13.0, fontconfig 2.14.2, Mesa 22.3.7, xterm 378, xkeyboard-config 2.20, fonttosfnt 1.2.2.
    • LLVM/Clang 13.0.0 (+ parches)
    • GCC 4.2.1 (+ parches) y 3.3.6 (+ parches)
    • Perl 5.36.1 (+ parches)
    • NSD 4.7.0
    • Unbound 1.18
    • Ncurses 5.7
    • Binutils 2.17 (+ parches)
    • Gdb 6.3 (+ parche)
    • Awk 12.9.2023
    • Expat 2.5.0.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster