¿Hay una ventana equivalente a chroot?

24

En un sistema * nix, puedo usar un chroot para aislar dos procesos entre sí y del resto del sistema. ¿Hay algún sistema de seguridad similar bajo Windows? ¿O hay alguna forma de evitar que dos procesos lean / escriban en los archivos de los demás?

Torre
fuente
1
No estoy seguro de que la etiqueta de seguridad esté garantizada aquí. kerneltrap.org/Linux/Abusing_chroot
MDMarra
1
@The Rook - En esa discusión sobre kerneltrap, los desarrolladores de kernel discuten el hecho de que chroot nunca fue un dispositivo de seguridad /
MDMarra
1
@The Rook - Correcto, simplemente estaba diciendo que es posible que desee reformular la pregunta. Ha habido extensiones de chroot o giros en el concepto (como cárceles) que se han diseñado teniendo en cuenta la seguridad. En su publicación, se refiere a chroot como un dispositivo de seguridad, que nunca fue pensado para ser.
MDMarra
1
@Nathan Adams Estoy de acuerdo, pero "seguridad en capas".
Torre
1
Parece que he preguntado algo bastante similar aquí . ¿Alguna vez lograste configurar esto en Windows Server? La respuesta ha aceptado ni explica cómo hacer esto, ni dice que no es posible ...
RomanSt

Respuestas:

5

No estoy seguro de que ganarás algo en Windows haciendo chrooting: ¿tienes una necesidad específica?

En caso de que alguno de los mejores resultados en google sea http://www.winquota.com/wj/ .

¿Quizás la virtualización de aplicaciones podría ser una opción? Microsoft tiene lo siguiente que decir al respecto:

En un entorno físico, cada aplicación depende de su sistema operativo para una variedad de servicios, incluida la asignación de memoria, los controladores de dispositivos y mucho más. Las incompatibilidades entre una aplicación y su sistema operativo pueden abordarse mediante la virtualización del servidor o la virtualización de la presentación; pero para las incompatibilidades entre dos aplicaciones instaladas en la misma instancia de un sistema operativo, necesita Application Virtualization.

Jon Rhoades
fuente
55
Uno de mis procesos estaba mal escrito y muy inseguro, la administración no quiere arreglarlo porque sería "demasiado costoso". Espero que este proceso sea finalmente adquirido y quiero limitar el impacto en mi sistema. Si realmente crees que no hay nada que ganar, entonces debes leer más sobre chroots.
Torre
1
@Rook Porque en Windows puede tener derechos de acceso divorciados del diseño del sistema de archivos. Dejando a un lado sus latidos en la sección de comentarios de esta respuesta , ese es el enfoque que la mayoría de las personas toman para aislar partes del sistema de archivos de un proceso que no está autorizado para acceder a él; simplemente déle al usuario que el proceso se inicia con acceso al subconjunto del sistema de archivos y servicios que necesita.
Asad Saeeduddin
@Asad Saeeduddin Hablando de sistemas de archivos, ¿ Windows no solo ejecuta automáticamente ejecutables no confiables que se encuentran en un dispositivo USB ? ¿Que año es?
Torre
Tengo una necesidad específica, no relacionada con la seguridad: este programa que estoy portando espera operar en su propio sistema de archivos raíz, y sería un gran esfuerzo portarlo para usar los directorios actuales correctamente. Afortunadamente, funciona independientemente del sistema de archivos: en Windows, simplemente se extenderá por la raíz de cualquier unidad en la que se ejecute. Si pudiera simplemente "alias" el directorio raíz en Windows a algún subdirectorio, sería mucho más limpio y fácil de rastrear, por lo tanto, quiero chroot.
Financia la demanda de Mónica el
7

Sandboxie http://www.sandboxie.com/

No exactamente como chroot. Configura una caja de arena para cada programa que especifique. Puede mantener fácilmente los procesos aislados.

Jason Berg
fuente
2

No usaría nada como esto, estás ejecutando Windows Mate.

NTFS tiene los derechos de acceso más detallados que puede encontrar. No es difícil dejar que un proceso comience con un usuario con privilegios más bajos, y solo le da acceso a ese usuario a los archivos de esta única aplicación.

No es necesario usar algo como chroot, que no es una herramienta de seguridad, cuando ya puede definir qué usuario puede hacer qué en qué directorio.

No es diferente a darle a Apache bajo Linux su propio usuario, solo se le permite trabajar dentro de sus carpetas.

Ok Dokey
fuente
2
Esta es la respuesta correcta de por qué no se necesita chroot
Jim B
@rook, luego no pudieron seguir los documentos técnicos de BPSAD y PTH para eliminar los ataques de oro. Por lo que sé, eso solo funciona en la acera basada en * nix.
Jim B
La compartimentación de @Jim B puede sonar extraña en una plataforma que rutinariamente otorga derechos administrativos al navegador, la base de datos y el servidor web. sin embargo, los sandboxes son una medida esencial de defensa en profundidad, independientemente de la plataforma.
Torre de
@rook, creo que confunde los derechos con el aislamiento, Windows aísla los procesos de forma predeterminada. Los procesos solo pueden acceder / integrarse o afectar a otro proceso si tiene permiso.
Jim B
@ JimB, no lo creo (a menos que haya entendido mal su comentario). El inicio de un proceso en Windows 7, por ejemplo, no le brinda ningún aviso de seguridad y luego el proceso puede leer el 90% de su unidad de almacenamiento sin tener que preguntarle a ningún proceso del sistema al respecto. Solo si intenta modificar, diga "C: \ Archivos de programa", entonces el sistema operativo puede golpear sus muñecas, pero eso no es seguridad, eso es lo esencial fundamental que apenas se cubre.
dimitarvp