Brute forzando las teclas ssh

3

Mi problema es común: eliminé mi clave SSH y olvidé configurar rm para que apunte a un archivo .trash. Tengo la clave pública y necesito entrar en este servidor. No estoy haciendo esto en el servidor de otra persona. Tengo suficientes recursos para hacerlo, solo necesito un programa.

    
pregunta StackExchange User 26.03.2013 - 17:16
fuente

4 respuestas

11

Si fuera posible (con la tecnología existente) reconstruir la clave privada a partir de la clave pública, entonces todos lo harían.

Los algoritmos asimétricos están diseñados para evitar eso. En el caso de RSA, la reconstrucción de la clave privada a partir de la clave pública es equivalente (*) a factorización de enteros , que es un Problema difícil cuya dificultad aumenta bastante cuando aumenta el tamaño del número entero. El récord mundial actual para un entero no especial (es decir, una clave RSA correctamente generada) es 768 bits y tomó un esfuerzo sustancial , estimado a unos 2000 CPU-año. Un punto importante es que parte del algoritmo requiere un sistema con mucho de RAM muy rápida (estamos hablando de terabytes aquí), y nadie sabe todavía cómo manejar esa parte Con la tecnología existente en el caso de un módulo RSA de 1024 bits. Tenemos algunos diseños preliminares para hardware especializado que podrían lograrlo, pero costarían mucho (no solo millones de dólares) y serían bastante voluminosos.

La conclusión es que no podrá descifrar su clave SSH, incluso si utiliza el mejor hardware disponible.

(*) La ruptura de RSA, como en "calcular una firma falsificada", no se ha demostrado como equivalente a la factorización de enteros; pero reconstruir la clave privada es equivalente a factorizar el módulo.
respondido por el Thomas Pornin 26.03.2013 - 17:58
fuente
9

Como ya te han dicho otras respuestas, olvídate de forzar la clave. No se puede hacer. No en un millón de años (o al menos no por un millón de dólares).

(A menos que la clave se haya generado con una implementación con errores .)

Lo que puede hacer, pero incluso eso no está asegurado, es recuperar el archivo eliminado. Eliminar un archivo solo lo elimina de la lista del directorio, no borra el contenido del archivo, por lo que es posible que el contenido aún se encuentre en el disco. El espacio está marcado como libre, por lo que otro archivo lo puede reutilizar. Por lo que debe dejar de escribir inmediatamente en el disco. Un cierre sucio es preferible.

Haga una copia de la partición que contiene el archivo y trabaje desde esa copia, es más seguro. Use una herramienta de talla ( TestDisk es una distribución de Linux de inicio que contiene una buena colección) para localizar bloques libres que contengan algo que parezca como un archivo de clave privada. Es muy reconocible: el archivo comienza con -----BEGIN RSA PRIVATE KEY----- . Un archivo de clave privada tiene menos de un bloque en la mayoría de los sistemas de archivos, por lo que no se fragmentará: una vez que encuentre el primer bloque, tendrá todo.

Puede o no encontrar el archivo de clave privada de esta manera. Puede que ya haya sido sobrescrito. Incluso si lo encuentra, espere pasar horas configurando su entorno de recuperación y explorando bloques eliminados. Es probable que disponer de una forma alternativa de acceder al servidor sea menos esfuerzo.

En el futuro, recuerde realizar copias de seguridad de todos los datos críticos, como las claves privadas. Guárdelas en un lugar seguro, por supuesto, pero recordar que disponibilidad (mantener las cosas accesibles) es una propiedad de seguridad, no se trata solo de confidencialidad (mantener las cosas inaccesibles).

    
respondido por el Gilles 26.03.2013 - 20:53
fuente
1

Todos los puntos del cifrado asimétrico es que es imposible recuperar una clave privada de una clave pública. Entonces, lo que quieres hacer es completamente inviable.

Genere un nuevo par de claves y olvídese de recuperar el anterior.

    
respondido por el Ayrx 26.03.2013 - 17:19
fuente
0

Suponiendo que tiene los recursos para hacerlo (quizás intencionalmente lo haga lo suficientemente pequeño para ser viable y, por lo tanto, inseguro ...), ¿en qué formato está?

    
respondido por el user2813274 23.07.2014 - 22:30
fuente

Lea otras preguntas en las etiquetas