Usando un inicio de sesión en la automatización

2

Mientras trabajaba en un contrato para una empresa que necesita seguridad de datos, encontré una secuencia de comandos de python que una persona anterior había creado y que utilizaba los datos de inicio de sesión almacenados en texto sin formato localmente. En una red de aproximadamente 200 usuarios, 7 de los cuales tienen acceso a este archivo, ¿realmente cuán peligroso es esta práctica? ¿Hay alguna manera de hacer que este sistema sea seguro sin que el usuario escriba sus datos de inicio de sesión cada vez que ejecuta el programa? Idealmente, esta secuencia de comandos se ejecuta en segundo plano mientras la computadora esté encendida, ¿existe algún riesgo asociado con el almacenamiento de la contraseña en la memoria durante ese tiempo?

    
pregunta Technolibre 12.06.2018 - 16:03
fuente

2 respuestas

1

Anteriormente, cuando trabajaba con permisos automatizados, normalmente usaba un acceso de grupo controlado. Con solo un puñado de personas que tienen acceso al archivo, yo diría que no es "peligroso" per se, pero no es una buena práctica. En mi experiencia anterior, dejar que algo como esto se vuelva loco (credenciales de texto sin formato), se convertirá en una molestia para actualizar y reemplazar más adelante cuando se convierta en un problema. Sería mejor lidiar con esto ahora que después. Como mencionó que esta empresa necesita seguridad de datos, yo diría que este caso específico se aplica y debería tratarse.

Hay varias maneras de hacer esto: depende de a qué tengas acceso o de lo que ya hayas construido. Implementar un archivo que se puede importar al script, que contiene nombres de usuario como parte de grupos específicos. Luego, permitiendo solo los permisos de los grupos apropiados para ejecutar el archivo / inicio de sesión. Dependería del entorno / sistema operativo en el que esté ejecutando esto también. Miraría en Python Keyring ya que podría implementarlo en línea con el script.

Obviamente, siguiendo esta ruta, se encontraría en una situación similar en la que también tendría que bloquear el archivo de permisos, y solo permitiría el acceso de personas clave para modificar dicho archivo. Una alternativa sería utilizar SQL y crear una tabla de credenciales basada en los usuarios que deberían tener acceso, en los que los permisos funcionarían de una manera similar (si estas personas específicas existen en esta tabla, permitir el acceso). Esto podría ser tan simple como los nombres de usuario / ID de usuario y no tiene que incluir contraseñas. Una comparación con Windows Active Directory también podría funcionar. Estos son algunos ejemplos generales, ya que no estoy seguro de en qué entorno se está ejecutando o si existen medidas que actualmente puedan utilizarse.

Sin embargo, volviendo a su pregunta, recomendaría implementar una solución. Incluso algo como crear una contraseña encriptada, cualquier cosa para deshacerse del texto sin formato sería una ventaja.

    
respondido por el jetblackpope 12.06.2018 - 17:07
fuente
0
  

¿Qué tan peligroso es esta práctica?

¿El script controla el hervidor o el sistema de selección de misiles?

Si bien parece que el cifrado de las contraseñas tiene algunos beneficios, esto solo significa que debe encontrar un lugar seguro para almacenar la clave de cifrado en lugar de la propia contraseña.

  

¿Hay alguna forma de hacer que este sistema sea seguro?

Probablemente sea posible hacerlo más seguro, pero no nos ha dicho nada sobre el sistema operativo, ni cómo se usa la contraseña. Tampoco son los modelos de amenazas (por ejemplo, ¿desea excluir este archivo de las copias de seguridad)? Hay permisos, escalada de privilegios controlada (sudo), cifrado de archivos / sistemas de archivos, Linux tiene facilidades de administración de secretos , también lo hace MS-Windows . MS-Windows puede almacenar credenciales de forma segura (y exponer formas de invocar la funcionalidad, por ejemplo, a través del programador de tareas). Podría salir y comprar una plataforma de administración de acceso privilegiado como CyberArk. Todos ellos tienen diferentes costos, beneficios y deficiencias.

    
respondido por el symcbean 12.06.2018 - 17:53
fuente

Lea otras preguntas en las etiquetas