mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-03-12 18:13:50 -05:00
Fix segfault if the server maliciously sends the wrong type of key
after a different type has been agreed. [originally from svn r1165]
This commit is contained in:
parent
a4c1aad9b2
commit
4fb01728e1
5
ssh.c
5
ssh.c
@ -2955,8 +2955,9 @@ static int do_ssh2_transport(unsigned char *in, int inlen, int ispkt)
|
||||
#endif
|
||||
|
||||
hkey = hostkey->newkey(hostkeydata, hostkeylen);
|
||||
if (!hostkey->verifysig(hkey, sigdata, siglen, exchange_hash, 20)) {
|
||||
bombout(("Server failed host key check"));
|
||||
if (!hkey ||
|
||||
!hostkey->verifysig(hkey, sigdata, siglen, exchange_hash, 20)) {
|
||||
bombout(("Server's host key did not match the signature supplied"));
|
||||
crReturn(0);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user