
Outil d'exploitation pour CVE-2018-10933 contournement d'authentification libSSH, permettant un accès shell distant sans identifiants à l'aide de scripts Python et de fausses clés SSH optionnelles.
Ouvrir un shell sans aucune information d'identification en utilisant CVE-2018-10933
Informations sur CVE-2018-10933 par libSSH : https://www.libssh.org/security/advisories/CVE-2018-10933.txt
Version de correction de bugs par libSSH : https://www.libssh.org/2018/10/16/libssh-0-8-4-and-0-7-6-security-and-bugfix-release/
https://gist.github.com/0x4D31/35ddb0322530414bbb4c3288292749cc
https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/
Important : "Les personnes essayant de reproduire le bug libssh : le code d'exemple (samplesshd-cb) n'est pas vulnérable car il possède des gestionnaires d'authentification explicites. Vous pouvez ouvrir un canal mais rien ne se passera."
Comme nous pouvons le voir, cette section sert uniquement à ouvrir un canal. Vous ne pouvez pas ouvrir un shell sur un serveur exécuté par "samplesshd-cb"
C'est juste pour ouvrir un canal. Les PoC que j'ai écrits sont juste pour les hôtes distants.
Téléchargez, décompressez et compilez la version vulnérable de libSSH : https://www.libssh.org/files/0.7/libssh-0.7.4.tar.xz
Ensuite, compilez et exécutez libSSH sur votre propre serveur avec ssh.
PWD: /libssh-0.7.4/build/examples/samplesshd-cb
./samplesshd-cb --dsakey==yourdsakey 127.0.0.1 --port=2222
Si vous avez des fausses clés SSH, utilisez le second bypasswithfakekey.py
pip install -r requirements.txt
If paramiko==2.0.8 doesn't works try : pip install paramiko==2.4.2
python libsshauthbypass.py --help
python bypasswithfakekey.py --help
