Java SE 8, actualización 51 Se agregó la protección “Native Sandbox” para PC con Windows. ¿Esperar lo?

24

Así que estaba haciendo una pequeña investigación sobre las diferencias (si las hubiera) entre los modelos de espacio aislado para aplicaciones de Windows 8 / 8.1 y Windows 10 cuando me topé con algo bastante interesante: cuando Oracle lanzó el paquete Java 8 actualización 51 hace unos meses. se agregó una nueva característica que parece haber volado bajo el radar:

  

Nuevas características y cambios

     

Entorno restringido del sistema operativo (caja de arena nativa)

     

JDK 8u51 introdujo los siguientes cambios en Native Sandbox:

     

El sandbox nativo solo está disponible en la plataforma Windows.

     

El sandbox nativo se puede habilitar o deshabilitar a través de Java Control   Panel- > Configuración avanzada- > Habilitar las restricciones del sistema operativo   entorno (caja de arena nativa) o mediante la configuración   La propiedad deploy.security.use.native.sandbox es verdadera en   Archivo deploy.properties.

     

El sandbox nativo está deshabilitado de forma predeterminada.

     

Cuando Sandbox nativo está habilitado, los applets de sandbox o inicio web   Las aplicaciones se ejecutarán en un entorno restringido, que es proporcionado por   El sistema operativo. Esto no afectará a todos los permisos.   aplicaciones y seguirán ejecutándose como antes.

El enlace es aquí . Contiene un poco más de información (muy poco más). Y tratar de encontrar documentación o discusión en otra parte ha aparecido ... bueno, básicamente nada. Nada. Si no fuera por ese poco de texto en las notas de la versión anterior y la existencia de la nueva opción en la interfaz de usuario, no habría ninguna razón para pensar que se haya lanzado una nueva capacidad. Extraño.

De todos modos, dejando de lado por qué hay una sorprendente falta de información sobre esta característica de "Caja de arena nativa", ¿alguien tiene alguna idea más de lo que es y de lo que hace? ¿Mueve las máquinas virtuales de Java y las bibliotecas al área de privilegios del "Modo protegido" de sorta-semi-sandbox que usa IE? Aprovecha los modelos de aplicaciones de Windows 8 / 8.1 y / o Windows 10 para poner Java VM y las cosas que lo acompañan en un nuevo entorno limitado de aplicaciones de Windows. (Sé que Microsoft ha dicho que en 2016 ofrecerá la capacidad de colocar programas de escritorio tradicionales en entornos limitados y distribuirlos a través de la tienda de Windows 10, por lo que tal vez poner el reproductor Java en un entorno seguro de Windows 10 no esté fuera de discusión). ¿Algo más completamente? En cualquier caso, ¿la VM aún estaría allí, ejecutándose dentro de la caja de arena adicional? Estoy un poco desconcertado.

¿Y por qué Oracle no ha dicho nada sobre esto, excepto (aparentemente) en la única página? La característica está obviamente en el producto. ¿Por qué está deshabilitado por defecto? ¿Se supone que está en pruebas, de alguna manera? ¿Alguien?

EDITAR:

Irónicamente, se hizo una búsqueda de Google ligeramente diferente, una pregunta muy similar ya ha sido preguntado sobre Stack Exchange por otra persona pero sin respuesta. Disculpas si dupliqué esa pregunta ... pero, ¿alguien sabe algo más sobre esto?

    
pregunta mostlyinformed 15.09.2015 - 00:49
fuente

3 respuestas

2

Ya que suena como un desarrollador de Java, entonces sabes que el código Java puede modificar las cosas a nivel del sistema. Si un applet es malicioso, aprovechan este hecho para intentar obtener acceso al sistema cliente. Este tipo de ataque es difícil de detener porque para cuando el applet se ejecuta, ya es demasiado tarde. Este sandbox nativo es otro nivel de protección provisto por el sistema operativo Windows que lo hace de modo que si un applet se sale de un navegador, no debería poder hacer nada malo ya que está dentro de un sandbox. Si está diseñado para interactuar con el sistema y se aprueba para hacerlo incluso si se establece un recinto de seguridad, entonces podrá hacerlo, ya que el applet podría hacerlo mediante la Lista de sitios de excepción o el entorno de tiempo de ejecución. Conjunto de reglas de despliegue. Por lo tanto, puede ejecutar applets en el recinto de seguridad de forma predeterminada con esta configuración solo para asegurarse de que está protegido adicionalmente hasta que Oracle decida activarlo para todos, pero tenga en cuenta que si lo hace, algunos de los que necesitan interactuar con el el sistema no funcionará a menos que se aprueben o usted lo autorice para permitirles también.

Si lo deshabilita de forma predeterminada, los applets heredados se actualizarán (y aprovecharán / se prepararán para) antes de que se habilite de forma predeterminada si Oracle decide hacerlo o si un usuario consciente de la seguridad quiere usar un "peligroso" applet, pueden hacerlo con la confianza de que (con suerte) no arruinará su sistema.

Actualmente, es probable que muchos applets no estén en el ESL o que muchos entornos no estén configurados para usar el DRS, por lo que, al configurarlo como desactivado de forma predeterminada, pueden asegurarse de que no se rompa nada (todavía). Otra razón puede ser que esta opción no es totalmente compatible con Windows todavía, y tienen su parte terminada y Windows solo necesita ponerse al día o todavía están resolviendo los detalles antes de cambiar el interruptor. Todavía hay muchas más razones por las que configurarlo por defecto en este momento tiene sentido, pero no lo sabremos hasta que digan más. Supongo que lo han puesto en marcha hasta que el ESL sea lo suficientemente grande como para que se sientan seguros al configurarlo sin que las personas que no leen los parches hagan una gran cantidad de preguntas sobre por qué, por lo que ya no funciona en este sitio web. .

Editar: Después de un poco más de excavación, resulta que ya existe Windows 10 Sandbox para las aplicaciones de Windows Store, información aquí y aquí , que ahora pueden usar los applets de Java cuando se escriben correctamente y se configuran sin problemas. Por lo tanto, estará en la zona de pruebas de App-V que usan las aplicaciones de Windows Store y las nuevas aplicaciones de escritorio en Windows 10, ya que parece ser la nueva caja de arena predeterminada de Windows.

    
respondido por el Robert Mennell 25.09.2015 - 22:27
fuente
1

Yo también sentía curiosidad, así que traté de averiguarlo. Estos tipos de aplicaciones Java siempre se ejecutan en una caja de arena en el sentido de que están aisladas en la JVM. Entonces, la pregunta es qué soporte de Windows están usando. Cada proyecto parece hacer esto un poco diferente. Aquí hay una página antigua que analiza el modo de usuario de Windows, el modo kernel, el sandbox y el modelo de Chrome. Te enseñare mucho. A partir de ahí, simplemente actualice el conocimiento con las características de seguridad destacadas de las versiones posteriores de Windows.

enlace

Todo lo que pude encontrar para ti. Cuando estuve en Windows, usamos principalmente Sandboxie, DefenseWall, etc. para sandboxing. Probablemente también trataría de utilizar EMET y XAX de Microsoft, si todavía estuviera en la plataforma.

    
respondido por el Nick P 23.09.2015 - 01:49
fuente
1

Por lo que puedo decir, eso es todo lo que Oracle ha lanzado en él. Dice que solo es aplicable a applets y aplicaciones de inicio web, lo que explica por qué hay tan poca información al respecto, ya que el complemento del navegador es la única parte de Oracle Java que no es de código abierto en estos días. Parece un intento de reforzar el entorno limitado del applet utilizando las capacidades nativas de Windows.

No debería tener ningún impacto en otros usos de Java, como las aplicaciones de escritorio y servidor, incluso si utilizan un SecurityManager , ya que el código parece estar limitado al complemento del navegador.

    
respondido por el James_pic 25.09.2015 - 14:58
fuente

Lea otras preguntas en las etiquetas