Pregunta Recuperar una clave privada SSH?


Tengo una clave RSA (generada por PuTTYgen) que está configurada para iniciar sesión en un grupo de máquinas a través de SSH. O, mejor dicho, TENGO una llave así. (La computadora en la que se encontraba se estrelló, hasta el punto de que se requería una reinstalación de XP. El archivo de clave privada está cifrado por el sistema de archivos, y ahora que está básicamente en lo que parece ser un sistema operativo y un usuario completamente diferente, cualquier cosa que haga XP) descifrar la clave aparentemente ya no se puede hacer.)

Lo que me queda es una base64 compatible con OpenSSL de la clave pública (de una de las máquinas aún configurada para aceptar contraseñas) y, por supuesto, la frase de acceso a la clave. Es posible que (!) Todavía tenga una copia de seguridad anterior del registro desde antes de que la máquina muriera también, pero tendría que buscarla. De cualquier manera, parece que podría no ser posible recuperar el archivo clave en sí. (Si se es Posible, eso sería genial. Pero las perspectivas no se ven bien hasta ahora.

¿Hay alguna forma de recuperar la clave privada, si no puedo recuperar el archivo real que la contenía? ¿Quizás importando la clave pública a PuTTYgen o openssl y haciendo algo al revés? Ponerse en contacto con todos los administradores involucrados y enviarles nuevas claves podría ser una molestia, por lo que es un último recurso.


4
2017-09-22 17:04


origen


No. Por lo que sé, eres SOL.
¿Cómo fue tu caja de XP cifrada exactamente? ¿Dónde estás usando EFS, o Truecrypt, o algo más? - Zoredache
@Zoredache: Se cifró con EFS, supongo. (Acabo de marcar la casilla en los atributos del archivo que decía "Cifrar este archivo para proteger los datos" o algo así). - cHao
@cHao, ¿estaba esta computadora en un dominio con servicios de certificados de Active Directory en ejecución? Si es así, el administrador de su dominio podría tener una clave para recuperar los archivos cifrados EFS. - Chris S
Y tu no copia de seguridad de sus certificados EFS? Si usas EFS nuevamente, lee sobre el EFS Mejores prácticas - Zoredache


Respuestas:


Actualmente, la única forma de "recuperar" la clave privada de la clave pública es mediante una búsqueda exhaustiva (fuerza bruta). El sistema se diseñó específicamente de esta manera para que pueda emitir su clave pública a cualquier persona sin preocuparse de que puedan descubrir su clave privada.

Editar:
¡Advertencia! Explicación simplificada por delante!

Suponiendo que tenía claves RSA (las más comunes), la clave pública tiene dos números: n y e. La clave privada tiene la misma n, y otro número d. Originalmente, había dos números primos grandes p y q que se usaban para calcular n, d y e para que n y e pudieran cifrar un texto; n y d podrían descifrar el cyphertext. Tienes n y e. Puedes factorizar n para calcular p y q; el problema es que n es un número enorme con miles de posibles números p y q. Actualmente no hay forma conocida de hacer esto rápidamente; No estoy seguro de si los hackers se han molestado en probar herramientas de escritura. Entonces, en esencia, no es realmente imposible.

Cuando asigna una frase de contraseña a una clave, simplemente realiza un cifrado simple en la clave privada almacenada en su computadora. La clave pública no se ve afectada en absoluto por esto. Las frases de contraseña son relativamente fáciles de romper en comparación con la propia clave privada; por lo tanto, no debe confiarse en esto como seguridad primaria (debe mantener su clave privada solo en lugares seguros).


12
2017-09-22 17:46



Entonces, ¿hay mucha más diferencia entre las claves que solo la frase de contraseña utilizada para cifrarlas? - cHao
La frase de contraseña solo está ahí para proteger su clave privada contra el robo o la manipulación. El publik / private keypair se utiliza como parte de criptografía de clave pública - Iain
@cHao, mira mi edición. Además, la frase de contraseña solo protege la clave privada, no le hace nada a la clave pública. - Chris S


Estoy bastante seguro de que no hay forma de recuperar la clave privada si tiene la clave pública; de lo contrario, sería un gran riesgo para la seguridad, ya que cualquiera con una clave pública podría determinar la clave privada a partir de ella.


5
2017-09-22 17:42



Si no me importa la clave anterior, y solo quiero otra que se pueda asignar a la misma clave pública ... ¿el mismo problema? - cHao
Sí. Las claves públicas pueden estar disponibles públicamente. Entonces, si tuviera una clave pública que conociera y pudiera crear una clave privada que se asignara a mi clave pública, podría fingir que soy yo y, por lo tanto, tener acceso a cualquier parte utilizando mis claves para la autenticación, por ejemplo. mis servidores - Richard
Eso se denomina "colisión de claves" y es algo muy malo en la criptografía, hasta el punto de que cualquier algoritmo que muestre signos de ello queda descalificado casi de inmediato para su uso. - Shadur


Si entiendo correctamente, desea generar una clave privada compatible a partir de la clave pública. Si esto fuera posible, todo el sistema sería inútil. Si lo administra, me gustaría saber cómo generar la clave privada de mi banco desde su certificado SSL.


4
2017-09-22 17:56



Si PuTTY ha almacenado la clave en el registro, estará en HKEY_CURRENT_USER \ Software \ SimonTatham \ PuTTY: si tiene una copia de seguridad del estado del sistema, es posible que no sea tan SOL como parecía. - James L
Tengo mi viejo NTUSER.DAT, iirc. ¿Sería allí donde se almacena HKCU? - cHao
@cHao, sí; puede cargar la colmena usando regedit y navegar a esa tecla para ver si está allí. - Chris S
Todo lo que veo allí son las claves públicas de los servidores a los que me he conectado y la configuración de la sesión. La configuración de la sesión no parece tener claves configuradas en ellos ... pero ... LOL! Los ajustes predeterminados apuntan a un sin cifrar archivo en \ Archivos de programa \ PuTTY! - cHao
Supongo que no estaba protegiendo las cosas tanto como pensaba que lo estaba. :) Oh bien. Ese consejo para buscar en el registro antiguo ayudó mucho. - cHao


Es absolutamente imposible recuperar una clave privada de una clave pública. Puede generar un público desde un privado, pero no al revés. Es completamente imposible, y es también el punto de cifrado asimétrico.


1
2017-09-22 17:54



Yo no diría "completamente imposible". Todo es posible dado el tiempo suficiente y la potencia de la CPU. :) Pero sí, definitivamente podría verlo como inviable. - cHao
Creo que el término utilizado es computacionalmente inviable. - Iain
No es imposible, solo es muy difícil y está diseñado para ser duro. Periódicamente, se producen mejoras en la calidad de los ataques, y las computadoras siempre son cada vez más difíciles y rápidas, por lo que la longitud de la clave se hace más larga. Los usuarios de PGP solían usar claves RSA de 512 bits, y ahora 1024 es mucho más común. Las declaraciones de imposibilidad conducen a un exceso de confianza y arrogancia. Solo conformate con "diseñado para ser mucho más difícil de lo que deberías poder lograr". - Phil P
Se equivoca al decir que puede generar una clave pública desde un privado; esto es igualmente dificil - MadHatter
@MadHatter: los archivos de clave privada tienden a tener suficiente información para recrear la clave pública. (Los archivos OpenSSH lo hacen, al menos, y parece que los archivos PPK de Putty también lo hacen). Si bien no puede tomar el llave y derivar la clave pública de la misma, si tiene la archivo de claveAparentemente contiene la clave privada más los números utilizados para generar ambas claves. - cHao


Lo único que puede hacer rápidamente es generar un nuevo conjunto de conjuntos de claves públicas y privadas y reemplazar las claves públicas en los servidores a los que intenta acceder; sin embargo, para ello debe tener acceso físico a los servidores que tenía al público. Llaves almacenadas en antes.

Si no tiene acceso físico a las máquinas, será prácticamente imposible para usted.

Además, incluso si tiene acceso físico a los servidores, si las unidades de disco duro o el área donde se almacenaron las claves están encriptadas, de nuevo, será prácticamente imposible para usted.

Doug Pan


0
2018-02-17 20:53