¿Cuál sería el enfoque razonable para proteger un nuevo proyecto de sandboxing contra los agujeros de seguridad hechos por azar?

0

Como desarrollador habitual, tengo curiosidad por ver nuevos proyectos. Digamos que hoy quiero contribuir al proyecto de código abierto en Python. Este proyecto está en GitHub y confío en las personas que están detrás de este proyecto. Lo único que me molesta es un error que un desarrollador podría cometer por casualidad, lo que podría conducir a una fuga no intencional de datos de la máquina local. Como algún error con las rutas / copia no deseada desde alguna ubicación aleatoria / carga / error no deseado en las dependencias de pip, que descarga alguna biblioteca maliciosa de pip. Estoy un poco paranoico con estas cosas, especialmente cuando el proyecto es nuevo para mí y todavía no conozco el código base ni la historia.

¿Cuál sería la capa razonable de protección allí? Estoy pensando en ejecutar el proyecto desde un docker sandbox bajo un usuario no root que monta solo el árbol de fuentes del proyecto como un volumen. ¿Es suficiente o sería más razonable?

    
pregunta tegoo 19.08.2018 - 12:07
fuente

1 respuesta

1

Si está buscando ejecutar un código que no sea de confianza en su sistema, entonces tiene sentido (si es posible) colocar el código en un entorno de seguridad, lo que reduce el impacto de que dicho código sea malicioso.

Yo diría que correr dentro de un contenedor Docker como un usuario sin privilegios es un buen paso. Si todo lo que le preocupa es la pérdida inadvertida de información, entonces Docker es un ajuste razonable, ya que proporciona al código en ejecución un entorno aislado para que cualquier fuga no afecte al sistema subyacente (a menos que haya asignado ese directorio desde el sistema operativo host a través de Docker run's -v switch)

    
respondido por el Rоry McCune 19.08.2018 - 14:59
fuente

Lea otras preguntas en las etiquetas