¿Cuáles son los riesgos de no aplicar parches a un servidor o hipervisor para Meltdown?

68

Se rumorea que el parche para Meltdown incurre en una penalización de rendimiento del 30%, lo que sería bueno evitar si es posible. Por lo tanto, esto se convierte en un problema de evaluación de riesgos de Seguridad vs Rendimiento.

Estoy buscando una regla de oro para evaluar el riesgo de no aplicar parches a un servidor o hipervisor.

Después de leer los informes técnicos , entiendo que definitivamente debe aplicar el parche si su máquina:

  • es una estación de trabajo que ejecuta código aleatorio potencialmente malicioso, incluido resulta , script java de sitios web aleatorios,
  • es una máquina virtual que podría ejecutar código malicioso (que básicamente se convierte en el primer caso).
  • es un hipervisor que ejecuta máquinas virtuales que no son de confianza junto a máquinas virtuales sensibles (que esencialmente se convierte en el primer caso),

Entiendo que el riesgo es (significativamente) menor en los siguientes casos:

  • el servidor se ejecuta en un hardware dedicado que ejecuta un conjunto de procesos estrechamente controlado en una red estrictamente controlada (incluido el uso de un navegador web para visitar sitios que no son de confianza)
  • VM que ejecuta un conjunto de procesos estrechamente controlado en una pila de virtualización de otras máquinas virtuales estrechamente controladas, todo en una red estrechamente controlada.

¿Eso es lógico, o me estoy perdiendo algo?

ACTUALIZACIÓN: los primeros usuarios del parche en Azure no reportan una desaceleración notable , por lo que todo esto puede ser discutible. / p>

Pregunta relacionada: ¿Cuáles son los riesgos? de no parchar un sistema operativo de estación de trabajo para Meltdown?

    
pregunta Mike Ounsworth 04.01.2018 - 06:38
fuente

2 respuestas

34

Básicamente, si ejecuta código de fuentes que no son de confianza en una máquina que tiene datos a los que no quiere que tenga acceso ese código, necesita parchear. Las computadoras de escritorio deben ser parcheadas porque tienen el desafortunado hábito de encontrar código no confiable; los servidores de alojamiento compartido, en particular los servidores de servidores privados virtuales, deben estar parchados, porque Meltdown permite que un usuario acceda a los datos de todos los demás usuarios.

Tenga en cuenta que el ataque de Meltdown no se puede usar para salir de una máquina virtual . Puede salir de un contenedor, sandbox o un sistema paravirtualizado, pero realizar el ataque Meltdown en un sistema completamente virtualizado solo le da acceso a la memoria del kernel de esa máquina virtual, no a la memoria del kernel del host.

    
respondido por el Mark 04.01.2018 - 08:49
fuente
11

Mi comprensión del problema es que se trata de una fuga de información local, donde local significa que la información se filtra "solo" a los procesos en el mismo hardware físico y no (directamente) a los sistemas remotos. Y, es un ataque que se demostró que era realmente útil en la práctica para extraer información sensible, incluso en la actualidad no es explotable de forma trivial. Pero lo fácil que es el exploit podría cambiar rápidamente como lo ve Rowhammer , que evolucionó en poco tiempo y solo es en su mayoría teórico. Problema para hacer más confiable la explotación del problema utilizando Javascript dentro de un navegador o para rootear teléfonos Android.

Por lo tanto, si existe la posibilidad de que se ejecute algún código no confiable en el servidor, debe parchear. Es por eso que todos los proveedores de nube más grandes ya han parcheado sus sistemas o lo harán en breve. Y es por eso que los parches se incorporaron tan rápidamente en el kernel de Linux, lo cual es muy inusual para los cambios en el subsistema de memoria.

Tenga en cuenta que el código que no es de confianza no solo se puede ejecutar si tiene usuarios que no son de confianza en el sistema. También puede suceder si procesa datos que se originan en una fuente no confiable. Por ejemplo, un atacante podría usar la funcionalidad existente de su servidor web para cargar una imagen que luego se convierte en su servidor (es decir, escalado o similar). Dado el historial de errores en las bibliotecas gráficas, no sería improbable que esta conversación pudiera resultar en la ejecución del código. Y dada la naturaleza del problema, dudo que las cajas de arena, la ventana acoplable o similar paren la explotación del error.

    
respondido por el Steffen Ullrich 04.01.2018 - 09:48
fuente

Lea otras preguntas en las etiquetas