
CVE-2018-10933 교육 목적
[설명]
이것은 CVE-2018-10933(libSSH 인증 우회)에 대한 교육 목적입니다.
libssh 버전 0.6 이상에는 서버 코드에 인증 우회 취약점이 있습니다.
공격자는 서버가 인증을 시작하기 위해 기대하는 SSH2_MSG_USERAUTH_REQUEST 메시지 대신 SSH2_MSG_USERAUTH_SUCCESS 메시지를 서버에 제시함으로써,
어떤 자격 증명 없이도 성공적으로 인증할 수 있습니다.
"patch" 폴더에는 테스트 목적으로 서버의 수정된 코드가 포함되어 있습니다 (어떤 인증 중에도 SSH2_MSG_USERAUTH_SUCCESS 패킷을 주입합니다).
이 취약점은 libSSH-0.7.5 버전부터 패치되었기 때문입니다 (오래된 libSSH 버전으로 환경을 재구성하는 것이 복잡합니다).
[사용법]
이 PoC를 자신의 머신에서 실행하려면 다음 지침을 따르세요.
저장소를 클론합니다.
로컬 머신에 라이브러리 추가
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]
그러면 배너 메시지를 얻을 수 있습니다.
페이로드를 실행하면 셸을 얻을 수 있습니다:
python3 paramikoBypass.py -t [server_IP] -p [server_port]
=> 성공!
[참고]
https://github.com/hackerhouse-opensource/
https://www.exploit-db.com/exploits/45638