¿Cómo puedo proteger el contenido distribuido en una máquina virtual Linux?

2

¿Qué activos estoy tratando de proteger?

Un prototipo de software pre-alfa no oficial proporcionado como un ejemplo reproducible para la evaluación durante el proceso científico de revisión por pares. El software se lanzará oficialmente bajo una licencia de estilo MIT / BSD después de que haya sido revisado por pares. La VM se ha distribuido a través de un sitio ftp y como un DVD.

Lo que está en juego es bajo: mi intuición es que no quiero que la versión no oficial circule en el futuro. Quiero la versión oficial, con la capacidad de actualización y limpieza de varios. artefactos que se utilizarán y no se confundirán con las copias existentes de la versión anterior.

Incluso si extiendo la confianza a los revisores y colegas, me gustaría poder compartir el software de manera más informal sin tener que solicitar que el archivo se elimine después de que se publique la versión oficial.

¿Quién usa el activo que está tratando de proteger y quién cree que podría querer abusar de él (y por qué)?

Otros científicos / posibles empleadores / receptores involuntarios que no han leído el descargo de responsabilidad pueden descifrar o confiar falsamente en la versión borrador de nuestro increíble y revolucionario software. La VM en sí depende del código que aún está en desarrollo y no está diseñado para la primera versión del software.

¿Qué pasos ya ha tomado para proteger ese activo?

  1. Tengo un trabajo cron programado para el 1 de julio de 2012 para ejecutar un script cleanvm.sh para eliminar archivos. He utilizado la etiqueta porque parece proporcionar la funcionalidad con la que normalmente me asocio virus.
  2. El uso de la máquina virtual requiere una contraseña.

¿Qué riesgos cree que aún necesita mitigar?

Me gustaría a) prohibir la transferencia de archivos fuera de la máquina virtual yb) garantizar que no haya una solución simple para deshabilitar el trabajo cron (es importante cambiar la hora del sistema). Idealmente, podría configurar un comando de eliminación remota que podría enviar antes del lanzamiento oficial, pero eso podría ser "excesivo" para el contexto actual.

    
pregunta Abe 19.04.2012 - 02:26
fuente

2 respuestas

4

Lea detenidamente esta pregunta sobre la eficacia de los controles DRM .

El resumen es que no: si le das el código al usuario, no puedes controlarlo de manera efectiva. Así que una opción es nunca darles su código:

¿Puede usar una solución tipo terminal / Citrix para simplemente permitirles la experiencia de usar su código? Si es así, esa es la ruta que recomendaría en sus circunstancias.

Por supuesto, un posible inconveniente es la mala experiencia del usuario si no tienen suficiente ancho de banda.

    
respondido por el Rory Alsop 19.04.2012 - 17:11
fuente
2

Creo que tu idea cleanvm.sh es inteligente. Simplemente le sugiero que ejecute ese cron como root y que se asegure de no distribuir la contraseña de root para la máquina virtual. Mientras los usuarios no puedan sudo o su root , no deberían poder desactivarlo.

También, obviamente, asegúrese de que el cleanvm.sh en sí sea propiedad de la raíz y que los permisos en ese archivo estén establecidos en 500 o menos.

    
respondido por el Chris Allen Lane 19.04.2012 - 17:17
fuente

Lea otras preguntas en las etiquetas