¿Es una contraseña en el llavero más segura que almacenar la contraseña en texto plano?

0

Muchos programas de correo electrónico como isync y msmtp ofrecen la posibilidad de especificar un comando que, una vez ejecutado, imprime la contraseña del usuario en stdout . Por ejemplo, en OSX podemos almacenar la contraseña en un llavero y luego llamar al siguiente comando:

security find-internet-password -w -a [email protected] -s imap.email.com  <keychain-file>

Ahora, si permitimos que el archivo security acceda a esta entrada del llavero sin pedir permiso (porque de lo contrario es bastante molesto), básicamente le hemos dado permiso a cualquiera para ejecutar este comando y quien ejecute este comando podrá leer la contraseña . Tan ingenuamente, parece que el almacenamiento de una contraseña en un llavero no es tan sabio en comparación con el almacenamiento en un archivo de texto simple.

¿Me estoy perdiendo algo? También intenté establecer el permiso del $(which security) binary en 700 pero luego el programa de correo electrónico no puede ejecutar el programa security , por lo que simplemente no es posible cambiar el permiso del security binario.

    
pregunta Pushpendre 10.12.2016 - 04:31
fuente

2 respuestas

1

Esto es precisamente por lo que no debe otorgar acceso al programa security a sus entradas de llavero. En general, cada entrada del llavero solo debe ser legible (sin preguntar al usuario) por el programa específico que lo usa, es decir, su programa de correo debe tener acceso a la contraseña de su cuenta de correo electrónico, su navegador favorito debe tener acceso a sus contraseñas web, etc.

Tenga en cuenta que esto requiere que los programas que usan las contraseñas almacenadas en el llavero deben usar las API del llavero directamente, no simplemente ejecutan el programa security en segundo plano. Si están usando security , entonces debe quejarse con el desarrollador de que lo está haciendo mal y obligarlo a debilitar significativamente la seguridad de su llavero. (O, como al menos msmtp es de código abierto, corríjalo usted mismo).

    
respondido por el Gordon Davisson 10.12.2016 - 08:25
fuente
1

No tengo ninguna contraseña de Internet almacenada en mi llavero, pero ejecutando security find-generic-password -w , recibo este mensaje:

De manera similar, la primera vez que uso una clave ssh, debo volver a ingresar una contraseña antes de que esté siempre disponible.

En general, así es como funcionan los agentes de contraseñas: no son mejores que tener un archivo de texto simple en el disco una vez que haya cargado el agente en la memoria y lo haya desbloqueado, pero brindan protección adicional una vez que salen. de memoria, ya que los contenidos se almacenan en disco encriptado. Entonces, ¿son perfectos? No, pero definitivamente son mejores que no cifrar en absoluto tus secretos.

    
respondido por el Xiong Chiamiov 10.12.2016 - 04:52
fuente

Lea otras preguntas en las etiquetas