Esto es solo una parte de la respuesta, porque el bosque ya cubrió mucho terreno.
Lo que más me preocupa es la salida de texto no confiable.
Puede evitar fácilmente el manejo de texto no confiable en el terminal. Primero, en su cliente de correo, almacene el bloque de gpg cifrado en un archivo, por ejemplo, /tmp/encrypted_message.txt
Luego, en la terminal, ejecuta
$ gpg ... -o /tmp/decrypted_message.txt ...
Así que ahora tiene el mensaje descifrado en /tmp/decrypted_message.txt
sin tener datos no confiables tocando el terminal / shell. Abra el archivo descifrado en cualquier aplicación en la que confíe para mostrarlo o envíelo por correo electrónico (ya que lo usa para mostrar texto que no es de confianza cuando recibe un mensaje no solicitado, por lo que no está aumentando la superficie de ataque). / p>
Debes preocuparte por otras cosas
Ejecutar comandos de shell ocultos en la entrada del usuario es en realidad un posible vector de ataque, ya que muchos sistemas son vulnerables a esto, por lo que desde el punto de vista del atacante vale la pena desarrollar la carga malvada necesaria, y desde su punto de vista es inteligente para eliminar el shell de su canalización cuando maneje la entrada del usuario siempre que pueda. Pero al almacenar la entrada no confiable encriptada en un archivo y hacer que gnupg produzca el texto descifrado en otro archivo, ya eliminó todos los contactos entre datos no confiables y el shell.
En su lugar, ahora debería preocuparse por las fallas en el resto de las aplicaciones de su canalización. gpg
podría contener una falla que le permite a un atacante ejecutar un código de máquina arbitrario (generalmente el código que le da un shell al atacante) en su computadora.
Pero gpg
aparece en muchos menos canales que, por ejemplo, un navegador web o un cliente de correo, por lo que parece poco probable que un atacante escoja a GnuPG para buscar fallas que le permitan ejecutar shellcode, en lugar del navegador web y el correo electrónico que se usa mucho más a menudo. clientes, (a menos que él apunte a usuarios de GnuPG o usted específicamente, por supuesto, alguien podría estar apuntando a usuarios de GnuPG, pero hay tantos paquetes de software de alta exposición que parecen objetivos mejores que creo que principalmente debería preocuparse por alguien que en realidad se dirige a usted o su sitio web, individualmente.
Airgapping para leer los mensajes que los usuarios de su sitio web le envían me parece demasiado cauteloso a menos que esté ejecutando la próxima Ruta de la Seda y tenga miedo de que la policía de EE. UU. lo persiga, en cuyo caso podría entender por qué se preocupa. Pero si desea aislar gpg
, puede usar software como firejail
. Esto significa que un atacante que haya encontrado una falla en GnuPG que le permita ejecutar código arbitrario también tendrá que encontrar una falla en el kernel de Linux antes de poder escapar de la cárcel a su sistema real y hacer más daño.
(Editar: se modificó la respuesta para reflejar la discusión en los comentarios / chat)