| Índice | |
|
Objetivos de seguridad del proyecto. Política de transparencia absoluta. Proceso de auditoría del código fuente. «Seguridad predeterminada». Uso de criptografía.
Monitorización de cambios.
|
Avisos de seguridad para todas las versiones de OpenBSD: 2.0, 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9, 3.0, 3.1, 3.2, 3.3, 3.4, 3.5. |
OpenBSD cree en la seguridad reforzada. Nuestra aspiración es llegar a ser el NÚMERO UNO de la industria en seguridad (si es que no lo somos ya). Nuestro modelo de desarrollo abierto nos permite tomar unas decisiones sobre qué incrementos podemos implementar en cuanto a seguridad, que otros sistemas comerciales como Sun, SGI, IBM o HP no podrían tomar por estar sujetos a ciertos compromisos. Podemos aplicar cambios que los sistemas comerciales no podrían. Y puesto que OpenBSD se exporta con criptografía integrada, también podemos tomar decisiones criptográficas a la hora de solucionar problemas en la seguridad.
Como muchos de los participantes en la lista de correo de BUGTRAQ, creemos en la completa transparencia de los problemas de seguridad. En el campo de los sistemas operativos hemos sido, probablemente, los primeros en hacer nuestro este concepto. Muchos sistemas comerciales, incluidos los de software libre, todavía intentan esconder muchas cuestiones a sus usuarios.
La información sobre seguridad se mueve a gran velocidad en los círculos de crackers. Por otra parte, nuestra experiencia nos dice que programar y hacer públicas soluciones correctas a problemas de seguridad requiere promedios de una hora de trabajo; la rapidez en las reparaciones es posible. En consecuencia, pensamos que una total transparencia ayuda a aquellos usuarios a quienes de verdad les preocupe la seguridad.
Nuestro equipo de auditorías de seguridad se compone de entre seis y doce miembros, cuya labor es la de estar contínuamente buscando y reparando nuevos agujeros de seguridad. Hemos estado haciendo auditorías desde el Verano de 1996. El proceso que seguimos para incrementar la seguridad se basa simplemente en un exhaustivo análisis, fichero por fichero, de todo componente crítico de software. En nuestras auditorías no buscamos agujeros de seguridad, sino errores de programación; si años más tarde alguien descubre que el error solucionado por nosotros constituía un problema de seguridad, bueno ... más a nuestro favor. Se han descubierto defectos en casi todas las áreas del sistema. Durante nuestras auditorías han sido encontradas clases de seguridad totalmente nuevas, y a menudo ha sido necesario volver a auditar código fuente que había sido auditado previamente, con estos nuevos defectos como objetivo. Con frecuencia el código se audita múltiples veces y por distintas personas con conocimientos y experiencia en auditorías diferentes.
Algunos miembros de nuestro equipo de auditorías de seguridad solían trabajar para Secure Networks, la compañía que creó Ballista, el paquete de barrido de seguridad (security scanner) de redes número uno en el mercado (Secure Networks fue adquirida por Network Associates, Ballista cambió el nombre por Cybercop Scanner, y bueno, el resto es historia... ). Dicha compañía llevaba a cabo mucha investigación en el campo de la seguridad, y por lo tanto nos vino bien para la postura de OpenBSD. OpenBSD pasó las pruebas de Ballista a la perfección desde el primer día.
Otra faceta de nuestros procesos de auditorías de seguridad es la
«proactividad». En la mayoría de los casos hemos
visto que lo importante no es determinar si algo puede llegar a ser un
exploit. Durante nuestros continuados procesos de
auditoría encontramos numerosos errores, y nos esforzamos en
solucinarlos aun cuando no esté probado que exista la posibilidad
de un exploit. Reparamos el error y continuamos buscando otros
errores que reparar. Hemos reparado muchos errores debidos a unas
prácticas de programación descuidadas en el código
simples y obvias, y sólo meses más tarde hemos descubierto
que los problemas eran en realidad exploits (o incluso, con
más frecuencia, alguien en
BUGTRAQ ha
informado que otros sistemas operativos eran vulnerables a un
«nuevo problema descubierto», y sólo entonces se ha
sabido que OpenBSD lo había reparado ya en una versión
anterior). Otras veces nos hemos librado de sufrir los efectos
completos de exploits por complejos ataques con un sistema de
ataque paso a paso, porque ya habíamos reparado alguno de los
pasos intermedios. Un ejemplo en el que tuvimos un éxito de este
tipo fue el del aviso sobre lpd que lanzó Secure
Networks.
Conforme auditamos el código fuente, a menudo inventamos nuevas maneras de resolver problemas. Alguna veces estas ideas han sido usadas antes en alguna aplicación escrita en algún lado, pero quizá no tomada en cuenta al grado que nosotros lo hacemos.
Nuestro proceso de auditoría proactiva nos ha reportado beneficios. Afirmaciones tales como «este problema fue reparado en OpenBSD unos 6 meses atrás», se están convirtiendo en algo común en foros como BUGTRAQ.
La parte más intensa de nuestras auditorías de seguridad ocurrió justo antes del lanzamiento de OpenBSD 2.0, y durante la transición entre la versión 2.0 y la 2.1, en el periodo de tiempo comprendido entre el último tercio de 1996 y la primera mitad de 1997. Miles (sí, miles) de asuntos relacionados con la seguridad fueron reparados rápidamente durante este periodo de un año de duración; errores como los típicos de desbordamiento de la memoria intermedia (buffer overflow), débiles implementaciones en protocolos, recolección de información, y condiciones de carrera en sistemas de archivos (filesytem races). De este modo se repararon la mayoría de los problemas de seguridad que encontramos antes del lanzamiento de la versión 2.1, y sólo fue necesario reparar un número mucho más pequeño de errores para el lanzamiento de la versión 2.2. Hoy en día ya no encontramos tantos problemas, es un simple caso de resultados decrecientes. Los problemas de seguridad que encontramos últimamente suelen ser significativamente más opacos y complejos. Aun así continuaremos perseverando por las siguientes razones:
El proceso de auditorías no ha acabado todavía y, como puede ver, continuamos trabajando con el fin de encontrar y solucionar nuevos defectos de seguridad.
Para asegurarnos de que los usuarios nuevos de OpenBSD no necesiten convertirse en expertos en seguridad de la noche al día (un punto de vista que otros sistemas parecen compartir), sacamos nuestros sistemas operativos con un sistema de «seguridad predeterminada». Todos los servicios no esenciales son desactivados. A medida que el usuario/administrador se familiarice con el sistema, descubrirá que tiene que ir activando servicios y procesos, como los dæmon, y otras partes del sistema. Durante el proceso de aprendizaje de activación de un nuevo servicio, el nuevo usuario puede aprender mucho más sobre las consideraciones y los aspectos de la seguridad.
Esta austeridad contrasta con la creciente cantidad de sistemas que
vienen con NFS, mountd, servidores de web y varios
otros servicios activados de forma predeterminada, creando al instante
problemas de seguridad para sus usuarios, apenas unos minutos
después de la primera instalación.
Y, por supuesto, ya que la base del proyecto OpenBSD es Canadá, sería imposible que no integráramos criptografía. Para obtener más información a este respecto, lea la página que trata sobre lo que hemos hecho con criptografía.
Ya no existe soporte para OpenBSD 3.3 y las versiones anteriores. Los
siguientes párrafos son simplemente una lista de avisos lanzados
mientras se seguían manteniendo; estas versiones pueden estar
afectadas por los avisos lanzados para las versiones más
recientes.
Éstos son los avisos de OpenBSD 3.1; todos estos problemas están resueltos en OpenBSD-current. OpenBSD-stable para 3.1 ya no está siendo mantenido, por lo que es necesario actualizar el sistema.
Éstos son los avisos de OpenBSD 3.0; todos estos problemas están resueltos en OpenBSD-current. OpenBSD-stable para 3.0 ya no está siendo mantenido, por lo que es necesario actualizar el sistema.
Éstos son los avisos de OpenBSD 2.9; todos estos problemas están resueltos en OpenBSD-current. OpenBSD-stable para 2.9 ya no está siendo mantenido, por lo que es necesario actualizar el sistema.
Éstos son los avisos de OpenBSD 2.8; todos estos problemas están resueltos en OpenBSD-current. OpenBSD-stable para 2.8 ya no está siendo mantenido, por lo que es necesario actualizar el sistema.
Éstos son los avisos de OpenBSD 2.7; todos estos problemas están resueltos en OpenBSD-current. Obviamente, todos los avisos de OpenBSD 2.6 en la lista correspondiente a 2.6 están solucionados en OpenBSD 2.7.
Éstos son los avisos de OpenBSD 2.6; todos estos problemas están solucionados en OpenBSD-current. Obviamente, todos los avisos de OpenBSD 2.5 que aparecen en la lista correspondiente a 2.5 están solucionados en OpenBSD 2.6.
Éstos son los avisos de OpenBSD 2.5; todos estos problemas están solucionados en OpenBSD-current. Obviamente, todos los avisos de OpenBSD 2.4 que aparecen el la lista correspondiente a 2.4 están solucionados en OpenBSD 2.5.
Éstos son los avisos de OpenBSD 2.4; todos estos problemas están solucionados en OpenBSD-current. Obviamente, todos los avisos de OpenBSD 2.3 que aparecen en la lista correspondiente a 2.3 están solucionados en OpenBSD 2.4.
Éstos son los avisos de OpenBSD 2.3; todos estos problemas están solucionados en OpenBSD-current. Obviamente, todos los avisos de OpenBSD 2.2 que aparecen en la lista correspondiente a 2.2 están solucionados en OpenBSD 2.3.
Éstos son los avisos de OpenBSD 2.2; todos estos problemas están solucionados en OpenBSD 2.3. Algunos de estos problemas todavía existen en otros sistemas operativos (los parches que se proporcionan son para OpenBSD 2.2; pueden o no funcionar en OpenBSD 2.1).
Éstos son los avisos de OpenBSD 2.1; todos estos problemas están solucionados en OpenBSD 2.2. Algunos de estos problemas todavía existen en otros sistemas operativos (si usa OpenBSD 2.1 le recomendamos que lo actualice con la versión mós nueva, ya que esta lista de parches sólo intenta eliminar los problemas más importantes de seguridad. En particular, en OpenBSD 2.2 se resuelven muchos problemas de seguridad en el anfitrión local. Muchos de estos problemas fueron solucionados de un modo en que nos resultó difícil crear parches).
Éstos son los avisos de OpenBSD 2.0; todos estos problemas están solucionados en OpenBSD 2.1. Algunos de estos problemas todavía existen en otros sistemas operativos (si usa OpenBSD 2.0 le felicitamos por seguir resistiendo al avance del tiempo, pero se está perdiendo mucho si no instala una versión nueva).
Puesto que adoptamos una postura proactiva con respecto a la seguridad, estamos contínuamente encontrando y solucionando nuevos problemas de seguridad. No se informa sobre todos estos problemas en profundidad debido a que, como ya se ha dicho anteriormente, en muchos de ellos no existe la confirmación de que sean exploits; muchos errores simples que solucionamos resultan tener consecuencias que no podríamos predecir. No disponemos del tiempo que sería necesario para hacer esos cambios disponibles en este formato.
Así pues, hay generalmente pequeñas reparaciones de seguridad en el código fuente de la versión de desarrollo que van más allá de las hechas en la versión final previa de OpenBSD. Garantizamos hasta un límite que estos problemas tienen un mínimo impacto y no están verificados como exploits. Si descubrimos que un problema es de una importancia crucial para la seguridad, los parches aparecerán aquí MUY rápido.
Aquellos usuarios a quien realmente les preocupe la seguridad, pueden hacer varias cosas:
Si encuentra algún nuevo problema de seguridad, puede enviarlo
por correo electrónico a
deraadt@openbsd.org.
Si desea cifrarlo con PGP (pero por favor, sólo si la privacidad
es un tema muy urgente, ya que esto no es conveniente), use esta
clave pgp.
Los miembros del equipo de OpenBSD han escrito una cantidad de documentos sobre cambios relacionados con la seguridad que han llevado a cabo en OpenBSD. Las versiones postscript de estos documentos se encuentran disponibles como sigue: