mejores prácticas para almacenar contraseñas recuperables

3

Estoy intentando crear un NMS (sistema de administración de red) y debo almacenar contraseñas para bases de datos, dispositivos y servidores de terceros que están siendo administrados (no contraseñas de usuario). Estas contraseñas deben poder recuperarse como texto sin formato para iniciar sesión en los dispositivos y conectarse a las bases de datos remotas.

Me gustaría conocer las mejores prácticas para almacenar dichas contraseñas en una base de datos o en un archivo de texto. Mi enfoque actual es que, almacene la contraseña como base64 codificada en un archivo de configuración de texto y descodifíquela en el código fuente. Solo los desarrolladores tienen acceso de lectura / escritura al archivo de configuración y al código fuente. Ningún otro usuario en el servidor dev / prod puede leer estos archivos. ¿Crees que este es un enfoque seguro?

Y sí, tengo este answer , pero en mi caso particular, no estoy tratando con contraseñas de cuentas de usuarios, sino que estoy tratando con contraseñas para iniciar sesión en los dispositivos que están siendo administrados. Es cierto que si alguien obtiene dichas contraseñas, puede iniciar sesión fácilmente en el cuadro y "volver a cargar / reiniciar".

Además, dado que el NMS tiene que ver con la automatización (y suponiendo que ejecutaré varios cronjobs), no puedo esperar que se le soliciten las contraseñas a la herramienta NMS.

Gracias, Amit

    
pregunta abarik 09.10.2015 - 01:32
fuente

1 respuesta

2

Nunca. Siempre. Utilizar. Base. 64. Codificación. No es seguro. Tampoco está permitido si está administrando las contraseñas de otras personas.

Debe almacenar las contraseñas cifradas a través de un programa a nivel de máquina que las cifrará y descifrará. Después de que se hayan cifrado, puede almacenarlos donde desee, pero siempre debe pasar por el programa para cifrarlos y descifrarlos.

Roboform Enterprise es un excelente administrador de contraseñas. El oficial de seguridad puede cambiar la contraseña de roboform para los clientes, generar contraseñas aleatorias y mantener las cosas bastante seguras.

Por supuesto, ya que está construyendo el suyo propio, la verdad es que tendrá que crear un programa de cifrado rotativo de claves automáticas con las claves almacenadas en una ubicación segura, no de red y segura. Luego, cifra las contraseñas y las almacena.

Cuando se gira una clave, el programa recupera todas las contraseñas, las descifra, las cifra con la nueva clave y las restaura en la base de datos o lo hace sobre la marcha con la próxima recuperación. Pero básicamente tienes que hacer que un programa a nivel de sistema lo haga.

También debe hacer que esto dependa del sistema en el que está compilado. De esta manera, puede asegurarse de que si el programa se lleva a un nuevo sistema, no funcionará descifrar esas contraseñas correctamente.

Por supuesto, esto significa que para cada cliente en su sistema, necesitan su propia copia de la aplicación y su propio conjunto de claves. Sin embargo, esa es la naturaleza de la seguridad empresarial.

    
respondido por el Robert Mennell 09.10.2015 - 01:59
fuente

Lea otras preguntas en las etiquetas