Introduzca la contraseña para la CLI de Bitcoin

3

Soy nuevo en Bitcoin y estoy muy preocupado por mantener mi billetera segura. Como prefiero las CLI sobre las GUI por muchas razones, incluida la seguridad, estoy aprendiendo a usar el comando bitcoin-cli en GNU / Linux. En particular, el comando bitcoin-cli walletpassphrase le permite desbloquear su billetera por un tiempo específico para realizar una transacción. Se espera que ejecute este comando así:

bitcoin-cli walletpassphrase p4$$w0rd 45

Donde los dos últimos argumentos son la contraseña de texto sin formato y el tiempo de desbloqueo en segundos. Claramente, eso no es seguro porque su contraseña se almacenará en texto sin formato en ~/.bash_history , y también alguien podría estar observándole mientras escribe su contraseña sin obstrucciones de texto sin formato, o también podrá retroceder.

Entonces, después de probar algunas sugerencias en esta publicación relacionada , se me ocurrió una solución muy simple. Tengo que mencionar que uso pass para almacenar mis contraseñas:

pass bitcoin | xargs -I '{}' bitcoin-cli walletpassphrase '{}' 45

En otras palabras, uso una tubería y xargs (vea this post ) para ingresar mi contraseña y evitar todos los problemas de seguridad mencionados anteriormente.

Mi pregunta es: ¿es esto realmente seguro? ¿Existe alguna posibilidad de que un atacante obtenga de alguna manera mi contraseña mientras viaja de pass a bitcoin-cli ? ¿Alguna otra idea sobre esto?

    
pregunta emisilva 21.12.2016 - 18:07
fuente

2 respuestas

4

En última instancia, su solución xargs todavía tiene como resultado que el bitcoin-cli se ejecute con la contraseña como un argumento de línea de comando. Su solución exitosamente evita que la contraseña termine en su archivo ~ / .bash_history. Sin embargo, no evita que la contraseña aparezca en la lista de procesos de su sistema mientras se ejecuta el comando. Cualquier usuario en su sistema que ejecute "ps -ef" en el momento adecuado (por ejemplo, mediante el envío de correo no deseado al comando) puede ver la contraseña.

En un sistema de escritorio estándar de un solo usuario, esto no es una gran preocupación. Puede deshabilitar la capacidad de los usuarios para enumerar los procesos de otros usuarios siguiendo las instrucciones en enlace .

Otra posibilidad a tener en cuenta es que algunas utilidades del sistema pueden registrar la lista de procesos activos. Si configura un sistema de detección de intrusiones, puede registrar cada proceso iniciado y sus argumentos. Si un programa en su computadora falla, una utilidad de registro de fallas puede incluir una lista de los procesos en ejecución de su sistema en el registro. (Eso sería bastante mala suerte de tener que ejecutarse en el mismo momento que bitcoin-cli), pero tenga en cuenta el caso en el que su sistema se está quedando sin memoria, lo que provoca que se bloquee bitcoin-cli y que otro programa se bloquee, lo que desencadena un error. registrador de fallos ...)

La mejor y más segura solución sería si bitcoin-cli tuviera una marca para permitirle pasar la contraseña de forma interactiva o directamente sobre la entrada estándar. Y convenientemente, tiene la opción -stdin que le permite hacer eso:

bitcoin-cli -stdin walletpassphrase
    
respondido por el Macil 21.01.2017 - 03:05
fuente
-1

Seguro que lo quieres? En Unix, la tubería se implementa a través de un socket Unix. Uno podría conectarse al zócalo, leer el búfer y almacenarlo en algún lugar, sin que te des cuenta. Este podría ser peor que el problema ~/.bash_history (que puede inhabilitar).

  

Como prefiero las CLI sobre las GUI por muchas razones, incluida la seguridad.

No estoy tan seguro de que la interfaz importe en lo que respecta a la seguridad. Ciertamente puedo pensar en algunos casos de uso, mientras que la interfaz web puede plantear menos problemas de seguridad que una GUI.

    
respondido por el Yorick de Wid 21.12.2016 - 21:15
fuente

Lea otras preguntas en las etiquetas