Come è successo un errore come CVE-2018-10933 (bypass di autenticazione di libssh)?

2

Come ha fatto un bug come la recente vulnerabilità di libssh vieni ad esistere? Esattamente qual è la causa della natura e della radice del bug?

Da sito web di libssh :

libssh versions 0.6 and above have an authentication bypass vulnerability in the server code. By presenting the server an SSH2_MSG_USERAUTH_SUCCESS message in place of the SSH2_MSG_USERAUTH_REQUEST message which the server would expect to initiate authentication, the attacker could successfully authentciate (sic) without any credentials.

Per me, questo solleva ancora più domande: perché il server dovrebbe fidarsi di qualcosa dal client? Perché SSH2_MSG_USERAUTH_SUCCESS esiste addirittura? Fa parte del protocollo ssh?

    
posta jamesdlin 17.10.2018 - 22:07
fonte

1 risposta

6

Il problema di fondo che ha causato questo bug e molti bug come questo è un falso assunto. vale a dire che un certo messaggio (SSH2_MSG_USERAUTH_SUCCESS) sarebbe sempre stato inviato da a un server a un client ... libssh non è riuscito a considerare che un client dannoso potrebbe inviare questo messaggio a a server. Sulla base di questa supposizione fallita, la libreria disponeva di una macchina a stati (condivisa da implementazioni client e server) che fa clic su on (come in connessione accettata) quando arriva questo messaggio. In genere sono ipotesi false che creano buchi di sicurezza.

    
risposta data 17.10.2018 - 22:35
fonte

Leggi altre domande sui tag