El sistema operativo OpenBSD se centra en la seguridad y el desarrollo de funciones de seguridad. [ 1 ] [ 2 ] : xxvii [ 3 ] Según el autor Michael W. Lucas, OpenBSD "es ampliamente considerado como el sistema operativo más seguro disponible en cualquier lugar, bajo cualquier condición de licencia". [ 2 ] : xxix
Cambios en la API y en la compilación
Los errores y fallos de seguridad suelen ser causados por errores de programación. Una fuente común de errores es el mal uso de las funciones de cadenastrcpy y en el lenguaje de programación C. Hay dos alternativas comunes, y , pero también pueden ser difíciles de entender y fáciles de usar incorrectamente, [ 4 ] [ 5 ] por lo que los desarrolladores de OpenBSD, Todd C. Miller y Theo de Raadt, diseñaron las funciones y . [ 6 ] Estas funciones tienen como objetivo dificultar que los programadores dejen accidentalmente búferes sin terminar o permitan que se desborden. [ 7 ] Han sido adoptadas por los proyectos NetBSD y FreeBSD, pero no por la biblioteca C de GNU . [ 8 ]strcatstrncpystrncatstrlcpystrlcat
En OpenBSD, el enlazador se ha modificado para emitir una advertencia cuando se encuentran funciones de manipulación de cadenas inseguras , como strcpy, strcat, o . Todas las ocurrencias de estas funciones en el árbol de código fuente de OpenBSD se han reemplazado. Además, OpenBSD incluye un verificador de límites estático para intentar encontrar otros errores de programación comunes en tiempo de compilación. [ 9 ] Otras API relacionadas con la seguridad desarrolladas por el proyecto OpenBSD incluyen [ 10 ] y . [ 11 ]sprintfissetugidarc4random
Aleatorización del núcleo
En un correo electrónico de junio de 2017, Theo de Raadt afirmó que un problema con los sistemas estables era que podían estar funcionando durante meses seguidos. Aunque existe una considerable aleatorización dentro del kernel, algunas direcciones clave permanecen iguales. El proyecto en curso modifica el enlazador para que, en cada arranque, el kernel se vuelva a enlazar, así como todas las demás aleatorizaciones. Esto difiere del kernel ASLR ; en el correo electrónico afirma que "Como resultado, cada nuevo kernel es único. Los desplazamientos relativos entre funciones y datos son únicos... [El cambio actual] es un andamiaje para asegurar que se arranque un kernel recién enlazado en cada reinicio... de modo que se pueda enlazar un nuevo kernel aleatorio... En una máquina rápida, tarda menos de un segundo... Un reinicio ejecuta el nuevo kernel, y se crea otro kernel para el siguiente arranque. Las diferencias internas entre las funciones dentro del kernel no están donde un atacante espera que estén, por lo que necesitará mejores fugas de información". [ 12 ]
Protección de memoria
OpenBSD integra varias tecnologías para ayudar a proteger el sistema operativo de ataques como desbordamientos de búfer o desbordamientos de enteros .
Desarrollada por Hiroaki Etoh, ProPolice es una extensión de GCC diseñada para proteger las aplicaciones de ataques de desbordamiento de pila . [ 13 ] Lo hace a través de varias operaciones: las variables de pila locales se reordenan para colocar los búferes después de los punteros, protegiéndolos de la corrupción en caso de un desbordamiento de búfer; los punteros de los argumentos de las funciones también se colocan antes de los búferes locales; y se coloca un valor canary después de los búferes locales que, cuando la función finaliza, a veces se puede usar para detectar desbordamientos de búfer. ProPolice decide si proteger o no un búfer basándose en heurísticas automáticas que evalúan su vulnerabilidad, reduciendo la sobrecarga de rendimiento de la protección. Se integró en la versión GCC de OpenBSD en diciembre de 2002 y se puso a disposición por primera vez en OpenBSD 3.3; [ 14 ] se aplicó al kernel en la versión 3.4. [ 15 ] La extensión funciona en todas las arquitecturas de CPU compatibles con OpenBSD y está habilitada por defecto, por lo que cualquier código C compilado estará protegido sin intervención del usuario. [ 16 ]
En mayo de 2004, OpenBSD en la plataforma SPARC recibió protección adicional de pila en forma de StackGhost . Esto utiliza características de la arquitectura SPARC para ayudar a prevenir la explotación de desbordamientos de búfer. [ 17 ] Se agregó soporte para SPARC64 a -current en marzo de 2005.
OpenBSD 3.4 introdujo W^X , un esquema de gestión de memoria para asegurar que la memoria sea escribible o ejecutable, pero nunca ambas cosas a la vez, lo que proporciona una capa adicional de protección contra desbordamientos de búfer. Si bien esto es relativamente fácil de implementar en una plataforma como x86-64 , que tiene soporte de hardware para el bit NX , OpenBSD es uno de los pocos sistemas operativos que lo admite en la plataforma genérica i386, [ 18 ] que carece de controles de ejecución por página integrados.
Durante el ciclo de desarrollo de la versión 3.8, se realizaron cambios en las mallocfunciones de gestión de memoria. En los sistemas operativos Unix tradicionales, mallocse asigna más memoria extendiendo el segmento de datos Unix, una práctica que ha dificultado la implementación de una protección sólida contra problemas de seguridad. La mallocimplementación actual en OpenBSD utiliza la mmapllamada al sistema, que se modificó para que devuelva direcciones de memoria aleatorias y garantice que diferentes áreas no se mapeen una al lado de la otra. Además, la asignación de pequeños bloques en áreas compartidas ahora es aleatoria y la freefunción se modificó para devolver la memoria al kernel inmediatamente en lugar de dejarla mapeada en el proceso. También se agregaron varias comprobaciones adicionales opcionales para facilitar el desarrollo. Estas características hacen que los errores de programa sean más fáciles de detectar y más difíciles de explotar: en lugar de que la memoria se corrompa o se ignore un acceso no válido, a menudo resultan en un fallo de segmentación y la interrupción del proceso. Esto ha puesto de manifiesto varios problemas con el software que se ejecuta en OpenBSD 3.8, particularmente con programas que leen más allá del inicio o el final de un búfer, un tipo de error que antes no se detectaba directamente pero que ahora puede causar un error. La implementación de estas capacidades llevó más de tres años sin una pérdida considerable de rendimiento.
Criptografía y aleatorización
Uno de los objetivos del proyecto OpenBSD es la integración de herramientas y software para criptografía robusta en el núcleo del sistema operativo. Para ello, se proporcionan varias características de bajo nivel, incluyendo una fuente de números pseudoaleatorios robustos ; [ 19 ] funciones hash y transformaciones criptográficas integradas ; y soporte para hardware criptográfico ( OpenBSD Cryptographic Framework ). Estas capacidades se utilizan en todo OpenBSD, incluyendo el algoritmo de hash de contraseñas bcrypt [ 20 ] derivado del cifrado de bloques Blowfish de Bruce Schneier , que aprovecha la planificación de claves de Blowfish, intensiva en CPU , lo que hace que los ataques de fuerza bruta sean menos prácticos.
En OpenBSD 5.3 se introdujo la compatibilidad con el cifrado de disco completo , [ 21 ] pero su activación durante la instalación requería la intervención manual del usuario, quien debía salir del instalador e introducir algunos comandos. A partir de OpenBSD 7.3, el instalador permite activar el cifrado de disco completo mediante un procedimiento guiado, sin necesidad de intervención manual. [ 22 ] [ 23 ]
Para proteger la información confidencial, como las contraseñas, de la filtración al disco, donde pueden persistir durante muchos años, OpenBSD admite el cifrado del espacio de intercambio. El espacio de intercambio se divide en muchas regiones pequeñas, cada una con su propia clave de cifrado, que se genera de forma aleatoria y automática sin intervención del usuario, se mantiene completamente en la memoria y nunca se escribe en el disco, excepto durante la hibernación ; tan pronto como los datos en una región ya no son necesarios, OpenBSD descarta su clave de cifrado, transformando efectivamente los datos en esa región en basura inservible. [ 24 ] Esta función se puede activar o desactivar mediante una única opción de configuración de sysctl , y no requiere ninguna configuración previa, partición del disco ni ajustes relacionados con la partición; además, no hay opción para elegir los parámetros de cifrado (como el algoritmo o la longitud de la clave a utilizar), ya que siempre se utilizan parámetros robustos. Esta función no causa ningún daño ni pérdida de funcionalidad, ya que las claves de cifrado utilizadas para acceder a los procesos intercambiados solo se pierden cuando el ordenador falla (por ejemplo, por un corte de energía), tras lo cual todos los sistemas operativos descartan el contenido anterior de la memoria y el intercambio de todos modos, y porque la hibernación sigue funcionando con normalidad con esta función. Esta función está habilitada por defecto en OpenBSD 3.8 (lanzado en noviembre de 2005) y versiones posteriores; OpenBSD y macOS [ 25 ] , a fecha de 2026, siguen siendo los únicos sistemas operativos importantes que tienen el intercambio cifrado por defecto independientemente del cifrado del disco y de la contraseña proporcionada por el usuario. ( Windows requiere activar una configuración que no se presenta en sus aplicaciones de Panel de control y Configuración para el usuario , y otros sistemas operativos, incluidos FreeBSD [ 26 ] y todas las distribuciones basadas en Linux , dependen de las funciones de cifrado de disco existentes para cifrar el intercambio, que a menudo (a) deben ser habilitadas manualmente por el usuario, (b) requieren configuración (si el cifrado de disco no se eligió durante la instalación del sistema operativo) que no es tan trivial como activar el cifrado de intercambio en OpenBSD, y (c) utilizan la contraseña proporcionada por el usuario, que los usuarios deben recordar y que podría ser débil/adivinable o incluso extraída de los usuarios).
La pila de red también hace un uso intensivo de la aleatorización para aumentar la seguridad y reducir la previsibilidad de varios valores que podrían ser útiles para un atacante, incluidos los números de secuencia iniciales TCP y las marcas de tiempo, y los puertos de origen efímeros. [ 27 ] También se incluyen varias características para aumentar la resiliencia y disponibilidad de la red, incluidas contramedidas para problemas con ICMP y software para redundancia, como CARP y pfsync . El proyecto fue el primero en deshabilitar el demonio telnet de texto plano a favor del demonio SSH cifrado , en 1999, [ 28 ] y presenta otro software criptográfico integrado como IPsec . El demonio telnet fue eliminado por completo de OpenBSD en 2005 [ 29 ] antes del lanzamiento de la versión 3.8 de OpenBSD.
Significar
El proyecto OpenBSD había inventado su propia utilidad para la firma criptográfica y verificación de archivos, signify, [ 30 ] en lugar de utilizar estándares y software existentes como OpenPGP y GnuPG . El creador de la signifyutilidad, Ted Unangst, escribió en 2015, hablando de OpenPGP y GnuPG : "Las preocupaciones que tenía al usar una herramienta existente eran complejidad, calidad y complejidad". [ 30 ] Esto está en línea con la tendencia de larga data del proyecto a reducir la complejidad y, a su vez, reducir la probabilidad de que existan vulnerabilidades en el software, y ayudar al usuario a comprender mejor el software y tomar decisiones más informadas sobre seguridad. signifyestá integrado en el sistema operativo base y se utiliza para la verificación de todas las versiones, parches y paquetes a partir de OpenBSD 5.5. [ 31 ] [ 32 ] Por el contrario, otros sistemas operativos de software libre y software centrado en la seguridad tienden a utilizar OpenPGP para la verificación de versiones, y a partir de 2022 continúan haciéndolo, incluyendo: Debian , un sistema operativo prominente que también se utiliza como base para otros sistemas operativos, incluyendo Ubuntu ; [ 33 ] Kali Linux , un sistema operativo especializado para pruebas de penetración , investigación de seguridad, análisis forense digital e ingeniería inversa ; [ 34 ] Qubes OS , un sistema operativo centrado en la seguridad; [ 35 ] Tor Browser , un navegador web anónimo; [ 36 ] SecureDrop , un paquete de software para que periodistas y denunciantes intercambien información de forma segura y anónima a través de Internet; [ 37 ] y VeraCrypt , un programa de software para cifrado sobre la marcha y cifrado de disco completo . [ 38 ]
X11
En X11 en OpenBSD, ni el servidor X ni los clientes X suelen tener privilegios elevados de memoria directa o hardware: al usar los controladores Intel(4) o Radeon(4), estos interactúan con el hardware subyacente únicamente a través de la interfaz del kernel Direct Rendering Management(4), de modo que el acceso a la memoria/hardware de bajo nivel lo gestiona exclusivamente el kernel. Otros controladores, como WSFB, siguen un patrón similar. Por este motivo, X11 en OpenBSD no permite el acceso a la memoria o hardware de bajo nivel a los programas de usuario/root, como ocurre en otros sistemas y como sucedía antes, lo que obligaba al usuario a elevar el valor de la configuración machdep.allowaperture desde su valor predeterminado de cero a un valor no seguro.
La versión del sistema X Window de OpenBSD (llamada Xenocara ) tiene algunas modificaciones de seguridad. El servidor y algunas de las aplicaciones predeterminadas están parcheadas para usar la separación de privilegios , y OpenBSD proporciona un controlador de "apertura" para limitar el acceso de X a la memoria. [ 39 ] Sin embargo, después del trabajo de Loïc Duflot sobre las fallas de seguridad de X, Theo de Raadt comentó que el controlador de apertura era simplemente "lo mejor que podíamos hacer" y que X "viola todos los modelos de seguridad que escucharás en una clase universitaria". [ 40 ] Continuó criticando a los desarrolladores de X por "tomarse su tiempo para resolver este problema de más de 10 años". El 29 de noviembre de 2006, se desarrolló un controlador de kernel VESA que permitió que X se ejecutara, aunque más lentamente, sin usar el controlador de apertura. [ 41 ]
El 15 de febrero de 2014, X fue modificado nuevamente para permitirle ejecutarse sin privilegios de root. [ 42 ] [ 43 ]
Tras el descubrimiento de una vulnerabilidad de seguridad en X, [ 44 ] OpenBSD no admite la ejecución de X como usuario root y solo admite la ejecución de X a través de un gestor de pantalla como _x11usuario dedicado.
Otras características
La separación de privilegios , [ 45 ] la revocación de privilegios , el chrooting y la carga aleatoria de bibliotecas también desempeñan un papel en el aumento de la seguridad del sistema. Muchos de estos se han aplicado a las versiones de OpenBSD de programas comunes como syslogd [ 46 ], tcpdump [ 47 ] y Apache , y al sistema de autenticación BSD .
OpenBSD tiene un historial de brindar a sus usuarios información completa sobre diversos errores y fallos de seguridad detectados por el equipo de OpenBSD. [ 48 ] Esto se ejemplifica en el lema del proyecto : "¡Solo dos agujeros remotos en la instalación predeterminada, en muchísimo tiempo!"
OpenBSD está diseñado para ser seguro por defecto, lo que incluye (pero no se limita a) tener todos los servicios no esenciales deshabilitados por defecto. Esto se hace no solo para que los usuarios no tengan que aprender a proteger sus ordenadores y perder tiempo haciéndolo después de instalar OpenBSD, sino también con la esperanza de que sean más conscientes de las consideraciones de seguridad, al obligarlos a tomar decisiones conscientes para habilitar funciones que podrían reducir su seguridad. [ 49 ]
OpenBSD 5.9 incluyó soporte para la entonces nueva pledgellamada al sistema (introducida en OpenBSD 5.8 como tamey renombrada en 5.9 a pledge) para restringir las capacidades de los procesos a un subconjunto mínimo requerido para el funcionamiento correcto. [ 50 ] Si el proceso se ve comprometido e intenta realizar un comportamiento no deseado, será terminado por el kernel. OpenBSD 6.4 introdujo la unveilllamada al sistema para restringir la visibilidad del sistema de archivos a un nivel mínimo. [ 51 ]pledge y unveilse utilizan juntas para confinar las aplicaciones, limitando aún más lo que de otro modo se les permite hacer bajo la cuenta de usuario con la que se están ejecutando. Desde la introducción de pledge, los programas base de OpenBSD (incluidos de forma predeterminada en OpenBSD), las aplicaciones (manejadas por sus desarrolladores) y los puertos (de aplicaciones, manejados por el equipo de OpenBSD) se han actualizado para ser confinados con pledgey/o unveil. Algunos ejemplos de aplicaciones de terceros actualizadas con estas características (por sus desarrolladores o en los puertos de aplicaciones de OpenBSD) incluyen los navegadores web Chromium y Firefox .
Referencias
- ^ Korff, Yanek; Hope, Paco; Potter, Bruce (2005). Dominando la seguridad de FreeBSD y OpenBSD . Sebastopol, California, EE. UU.: O'Reilly. ISBN 0-596-00626-8.
- ^ a b Lucas, Michael W. (2013). Absolute OpenBSD: Unix para el paranoico práctico (2.ª ed.). San Francisco: No Starch Press . ISBN 978-1-59327-476-4.
- ^ Palmer, Brandon; Nazario, Jose (2004). Arquitecturas seguras con OpenBSD . Boston: Addison-Wesley . ISBN 0-321-19366-0.
- ^ "strncpy – copia parte de una cadena a otra" . Páginas del manual de OpenBSD . Consultado el 14 de mayo de 2021 .
- ^ "strncat – concatena una cadena con parte de otra" . Páginas del manual de OpenBSD . Consultado el 14 de mayo de 2021 .
- ^ "strlcpy, strlcat – copia y concatenación de cadenas con límite de tamaño" . Páginas del manual de OpenBSD . Consultado el 14 de mayo de 2021 .
- ^ Miller, Todd C.; de Raadt, Theo (6 de junio de 1999). strlcpy y strlcat: copia y concatenación de cadenas consistentes y seguras . Conferencia Técnica Anual de USENIX . Monterey, California . Recuperado el 26 de mayo de 2016 .
- ^ Drepper, Ulrich (8 de agosto de 2000). "Re: PATCH: copia y concatenación segura de cadenas" . libc-alpha@sources.redhat.com (Lista de correo) . Consultado el 26 de mayo de 2016 .
- ^ Madhavapeddy, Anil (26 de junio de 2003). "CVS: cvs.openbsd.org: src" . openbsd-cvs (Lista de correo) . Recuperado el 31 de marzo de 2013 .
- ^ "issetugid – ¿el ejecutable actual está ejecutando setuid o setgid?" . Páginas del manual de OpenBSD . Consultado el 14 de mayo de 2021 .
- ^ "arc4random, arc4random_buf, arc4random_uniform – generador de números aleatorios" . Páginas del manual de OpenBSD . Consultado el 14 de mayo de 2021 .
- ^ correo electrónico 13/06/2017
- ^ "Extensión de GCC para proteger las aplicaciones de ataques de desbordamiento de pila" . IBM Research . Archivado del original el 4 de junio de 2014. Recuperado el 26 de mayo de 2016 .
- ^ "OpenBSD 3.3" . OpenBSD . Consultado el 28 de mayo de 2016.
Integración de la tecnología de protección de pila ProPolice [...] en el compilador del sistema.
- ^ "OpenBSD 3.4" . OpenBSD . Consultado el 28 de mayo de 2016.
La protección de pila ProPolice también se ha habilitado en el kernel.
- ^ "gcc-local – modificaciones locales a gcc" . Páginas del manual de OpenBSD . Consultado el 28 de mayo de 2016.
gcc viene con la extensión de protección de pila 'ProPolice', que está habilitada por defecto
. - ^ Frantzen, Mike; Shuey, Mike (13 de agosto de 2001). StackGhost: protección de pila facilitada por hardware . 10.º Simposio de Seguridad de USENIX . Washington, DC . Recuperado el 26 de mayo de 2016 .
- ^ "OpenBSD 5.8" . OpenBSD . Consultado el 28 de mayo de 2016.
Soporte para el bit NX (No-eXecute) en i386, lo que resulta en una aplicación mucho mejor de W^X en el espacio de usuario para el hardware que tiene esta característica.
- ^ de Raadt, Theo ; Hallqvist, Niklas; Grabowski, Artur; Keromytis, Angelos D.; Provos, Niels (6 de junio de 1999). Criptografía en OpenBSD: descripción general . Conferencia Técnica Anual de USENIX . Monterrey, California . Consultado el 30 de enero de 2005 .
- ^ Provos, Niels ; Mazières, David (6 de junio de 1999). Un esquema de contraseña adaptable al futuro . Conferencia Técnica Anual de USENIX . Monterey, California . Recuperado el 26 de mayo de 2016 .
- ^ "OpenBSD 5.3" . OpenBSD . Consultado el 26 de mayo de 2016 .
- ^ "OpenBSD 7.3" . www.openbsd.org . Consultado el 19 de abril de 2023 .
- ^ "Soporte inicial para el cifrado de disco guiado en el instalador" . undeadly.org . Consultado el 19 de abril de 2023 .
- ^ Provos, Niels (14 de agosto de 2000). Cifrado de memoria virtual . 9º Simposio de Seguridad de USENIX . Denver, Colorado . Recuperado el 9 de abril de 2006 .
- ^ "¿Qué es la memoria virtual segura en Mac?" . Soporte técnico de Apple . Consultado el 13 de marzo de 2026 .
- ^ "Capítulo 20. Almacenamiento — 20.14. Cifrado de intercambio" . Portal de documentación de FreeBSD . Consultado el 27 de septiembre de 2023 .
- ^ Biancuzzi, Federico (12 de octubre de 2005). "La pila de red de OpenBSD" . SecurityFocus . Consultado el 10 de diciembre de 2005 .
- ^ de Raadt, Theo (10 de abril de 1999). "Deshabilitar telnet/ftp/login por defecto, por ahora" . OpenBSD .
- ^ de Raadt, Theo (25 de mayo de 2005). "CVS: cvs.openbsd.org: src" . Lista de correo OpenBSD-CVS .
Archivos eliminados: libexec/telnetd
- ^ a b Unangst, Ted. "signify: Asegurando OpenBSD de nosotros para ti" . www.openbsd.org . BSDCan 2015 (junio), Ottawa, Canadá . Recuperado el 12 de julio de 2022 .
- ^ "OpenBSD 5.5" . www.openbsd.org . Consultado el 12 de julio de 2022 .
- ^ "OpenBSD: Innovaciones" . www.openbsd.org .
- ^ "Verificación de la autenticidad de las imágenes de Debian" . www.debian.org . Consultado el 12 de julio de 2022 .
- ^ "Descargar imágenes de Kali Linux de forma segura | Documentación de Kali Linux" . Kali Linux . Consultado el 12 de julio de 2022 .
- ^ "Verificación de firmas" . Qubes OS . Consultado el 12 de julio de 2022 .
- ^ "¿Cómo puedo verificar la firma del navegador Tor? | Proyecto Tor | Soporte" . support.torproject.org . Consultado el 12 de julio de 2022 .
- ^ "Compartir y aceptar documentos de forma segura" . SecureDrop . Freedom of the Press Foundation . Consultado el 12 de julio de 2022 .
- ^ "VeraCrypt - Cifrado de disco gratuito de código abierto con seguridad robusta para los paranoicos" . veracrypt.fr . IDRIX . Consultado el 12 de julio de 2022 .
- ^ "xf86 – Controlador de apertura del sistema X Window" . Páginas del manual de OpenBSD . Consultado el 14 de mayo de 2021 .
- ^ de Raadt, Theo (11 de mayo de 2006). "Re: error de seguridad en hardware x86 (gracias a X Windows)" . openbsd-misc (Lista de correo) . Recuperado el 26 de mayo de 2016 .
- ^ Herrb, Matthieu (29 de noviembre de 2006). "CVS: cvs.openbsd.org: XF4" . openbsd-cvs (Lista de correo) . Consultado el 26 de mayo de 2016 .
- ^ Kettenis, Mark (15 de febrero de 2014). "CVS: cvs.openbsd.org: xenocara" . openbsd-cvs (Lista de correo) . Consultado el 26 de mayo de 2016 .
- ^ "Xorg ahora puede ejecutarse sin privilegios en OpenBSD" . OpenBSD Journal . 22 de febrero de 2014. Consultado el 26 de mayo de 2016 .
- ^ "Errata de OpenBSD 6.4" . www.openbsd.org . Consultado el 23 de mayo de 2019 .
- ^ Provos, Niels ; Friedl, Markus; Honeyman, Peter (4 de agosto de 2003). Prevención de la escalada de privilegios . XII Simposio de Seguridad de USENIX . Washington, DC . Recuperado el 26 de mayo de 2016 .
- ^ Madhavapeddy, Anil (31 de julio de 2003). "CVS: cvs.openbsd.org: src" . openbsd-cvs (Lista de correo) . Consultado el 13 de marzo de 2026 .
- ^ Acar, Can Erkin (28 de enero de 2004). "CVS: cvs.openbsd.org: src" . openbsd-cvs (Lista de correo) . Consultado el 13 de marzo de 2026 .
- ^ Miller, Robin (11 de diciembre de 2000). "Theo de Raadt responde" . Slashdot . Archivado del original el 28 de julio de 2011. Recuperado el 16 de mayo de 2014 .
- ^ "OpenBSD: Seguridad — "Seguro por defecto"" . www.openbsd.org . Consultado el 27 de septiembre de 2023 .
- ^ "pledge() - un nuevo mecanismo de mitigación" . OpenBSD . Consultado el 19 de mayo de 2018 .
- ^ "unveil — revela partes de una vista restringida del sistema de archivos" . Páginas del manual de OpenBSD . Consultado el 15 de mayo de 2020 .
Enlaces externos
- Técnicas de mitigación de exploits: una actualización después de 10 años. Archivado el 20 de febrero de 2014 en Wayback Machine .
- Correo electrónico de Theo de Raadt sobre programación segura: Sobre la aceptación de strlcpy/strlcat por parte de la industria.
- OpenBSD
- Seguridad del sistema operativo
- Sistemas operativos integrados
- Características del software