SSH Acceso usando claves privadas

1

Estoy tratando de practicar hacking ético en mi propio laboratorio. Tengo un shell limitado en un cuadro de fedora y además puedo leer archivos root como / etc / shadow a través de otra vulnerabilidad.

Ahora, necesito obtener la raíz del cuadro, intenté descifrar el hash de raíz en / etc / shadow pero no tuve suerte. Pensé en utilizar claves ssh.

Logré obtener el contenido de /root/.ssh/authorized_keys y pensé que podía usarlo para autenticarme sin una contraseña. sin embargo, cuando emití el siguiente comando:

     root@kali:~/Desktop# ssh -o BatchMode=yes -i ~/Desktop/x.pem [email protected]

Permiso denegado (publickey, gssapi-with-mic, contraseña).

Recibo el error arriba -donde x.pem es solo un archivo que usé para guardar una copia de la clave que se encuentra en authorized_keys tal como está en la máquina víctima. ¿Alguna idea de cuál es el problema? u otra forma sugerida de obtener privilegios de root?

Gracias

    
pregunta Ahmed Taher 14.10.2013 - 22:53
fuente

2 respuestas

5

~/.ssh/authorized_keys contiene la clave pública, necesita la clave privada correspondiente para iniciar sesión. Las claves privadas generalmente se ven como ~/.ssh/id_rsa , ~/.ssh/id_dsa , ~/.ssh/something.id_rsa , etc.

Lamentablemente, no publicó suficiente información sobre los privilegios que tiene exactamente / las posibilidades que brinda su vulnerabilidad (¿puede leer solo archivos como root, puede ejecutar algo como root?).

    
respondido por el RSchulze 14.10.2013 - 23:04
fuente
2

Como señala @RSchulze, necesita la clave privada para iniciar sesión, no la clave pública. Específicamente, el servidor sshd otorgará acceso si el cliente demuestra el control (mediante el cálculo de una firma en un desafío) de la clave privada correspondiente a una de las claves públicas almacenadas en el .ssh/authorized_keys .

Tenga en cuenta que esto implica que si puede escribir en .ssh/authorized_keys , no solo leerlo, puede poner aquí una clave pública de su elección, por ejemplo. Una para la que conoce la clave privada (porque la generó). Alternativamente, si esta casilla estaba destinada a ser pirateada con fines educativos, es posible que exista una clave pública débil en el .ssh/authorized_keys puesto a propósito (depende de si la persona que instaló este sistema quería educarlo sobre criptografía específicamente). ).

También tenga en cuenta que en muchos sistemas, el inicio de sesión root a través de SSH está desactivado. Consulte el archivo /etc/ssh/sshd_config ; Esta es la opción PermitRootLogin . Es posible que desee comprobar eso antes de seguir este camino. Aunque si el usuario raíz local tiene un .ssh/authorized_keys , probablemente el inicio de sesión raíz esté permitido (ese archivo no tendría mucho sentido de lo contrario).

    
respondido por el Tom Leek 15.10.2013 - 14:37
fuente

Lea otras preguntas en las etiquetas