¿Detener las actualizaciones de software una vez que el sistema está "estable"?

13

Ayer por la mañana tuve una clase de SO y acabamos de comenzar la parte sobre la seguridad del SO.

Cuando el profesor estaba explicando qué es un parche de administración , nos dijo que una compañía de computadoras sabe qué se ocupa de proteger los servidores, después de la certificación (no sé cómo certifica la seguridad). cuando tratas con computadoras), detiene el administrador de parches porque dicen

  

llegamos a una situación estable por lo   Actualizando el software resolveremos lo conocido.   errores, pero también podría terminar en la introducción de una nueva seguridad   problemas para que no hagamos eso

Ahora, no estoy en desacuerdo con la lógica de esto porque es realmente cierto que puedes introducir nuevos errores, pero ¿qué hay de resolver los existentes? ¿Y qué significa estable cuando la palabra se usa en este contexto?

    
pregunta dierre 18.11.2010 - 23:03
fuente

4 respuestas

8

"Estable" significa "inmutable". Esto es diferente del otro significado que a veces se da en el software: "no muy buggy". Ahora, la situación podría ser que efectivamente hay muchos errores, pero si el sistema no está cambiando rápidamente, entonces es más fácil detectar y razonar sobre su estado de seguridad actual.

Como bien señala, este es un arma de doble filo: no está introduciendo nuevos problemas, pero tampoco está tratando con los existentes. Si esto es lo correcto, depende de los riesgos relativos de que los atacantes conozcan y exploten los problemas existentes, en lugar de los nuevos problemas que causan algún problema que respalde la situación estable.

    
respondido por el user185 18.11.2010 - 23:06
fuente
12

En teoría, lo que su profesor propone es razonable. Pero hay un problema en la práctica. Usted nunca llega a una configuración estable. Siempre.

No hay software no trivial por ahí que no tenga errores desconocidos. Ninguna. Y algún porcentaje de esos errores son vulnerabilidades de seguridad.

¿Qué propone hacer el profesor si alguien encuentra una vulnerabilidad de ejecución remota de código en el sistema después de que se complete la certificación?

¿Realmente cree que es más seguro mantener un sistema implementado con una vulnerabilidad conocida de ejecución remota de código que correr el riesgo de un parche?

La respuesta (sorprendentemente) podría ser "sí". Y eso va al corazón de la seguridad del mundo real. La seguridad es realmente acerca de la gestión de riesgos. Cada pieza de software implementada tiene un cierto riesgo asociado con ese software. El software recién implementado podría romper una aplicación de línea de negocio existente. Podría introducir nuevas vulnerabilidades.

Básicamente, no hay forma de saber qué podría pasar. Por lo tanto, debe decidir cuál es su tolerancia al riesgo.

Para algunos sistemas (a menudo los sistemas en los que la vida de alguien depende del sistema), en realidad es mejor mantener el sistema sin cambios (incluso si existen vulnerabilidades conocidas) y mitigar las vulnerabilidades fuera del sistema (tal vez con un firewall). Para otros sistemas, todo lo que necesita hacer es asegurarse de que sus aplicaciones de línea de negocio continúen funcionando.

Aquí no hay una solución única para todos. Cada empresa debe tomar su propia decisión sobre las compensaciones de riesgo / recompensa asociadas con un parche de seguridad. Algunos aceptarán el riesgo, otros no.

    
respondido por el Larry Osterman 21.11.2010 - 09:03
fuente
8

Estable puede significar algunas cosas diferentes.

En un entorno administrado en general, lleva el sistema operativo al último nivel de parche bueno conocido. Eso podría significar que no necesariamente tiene los últimos parches, pero tiene todos los parches de seguridad conocidos (para vulnerabilidades conocidas) y está probado que funciona con el software que necesita instalarse en él. Este es un equilibrio entre seguridad y usabilidad.

Cada vez que hace un parche, puede crear o exponer nuevos errores y vulnerabilidades y también romper el software que necesita para ejecutarse en el servidor. Si el parche rompe su servidor web, la máquina no sirve para nada.

Una forma de manejar el dilema que mencionó es crear máquinas de clasificación. Cuando quiera probar nuevos parches, instale todo en las máquinas de ensayo y luego realice una prueba para asegurarse de que todo funciona desde una funcionalidad y un punto de vista de seguridad. Dado que esto requiere tiempo, esfuerzo y recursos, no es algo que quiera hacer a menudo. Dependiendo de los recursos y los requisitos de seguridad, es posible que solo haga esto cada 6 meses (la excepción es un exploit de día cero).

Si desea obtener más información sobre este aspecto en gestión de configuración

    
respondido por el rox0r 19.11.2010 - 01:11
fuente
6

"estable" tiene dos diferencias diferentes y ligeramente contradictorias:

enlace

1a) no cambia ni fluctúa

2a) estable en el propósito: firme en la resolución

2b) no sujeto a inseguridad (sane)

La mayoría del uso del software es una extensión del segundo significado: el software estable es un software que no falla.

Debian estable, y el significado del que habla aquí es el primer significado: software estable es un software que no cambia.

Esto es atractivo porque puedes descubrir todos los errores y resolver los problemas para ellos. y la estabilidad significa que no tendrás nuevos errores de los que preocuparte.

Sin embargo, los errores de seguridad no son como la mayoría de los otros errores: la frecuencia con la que se encuentra un error normal suele ser proporcional a lo importante que es. Con esto quiero decir que un error encontrado durante el desarrollo es probable que afecte a una gran cantidad de casos de uso, y usuarios. Mientras que un error que se encuentra una vez que se despliega el producto es probable que sea un caso de ventaja o que afecte solo a una pequeña proporción de usuarios. (Excepciones para errores de tipo Y2K, donde un cambio en el entorno de los usuarios causó grandes problemas).

Los errores de seguridad suelen ser casos extremos, pero una vez que se conocen, los ataques contra ellos pueden afectar a cada usuario en cualquier escenario de uso. Por lo tanto, el problema de repente se vuelve importante para todos.

    
respondido por el Douglas Leeder 20.11.2010 - 23:58
fuente

Lea otras preguntas en las etiquetas