The diffie_hellman_sha256 function in kex.c in libssh2 before 1.7.0 improperly truncates secrets to 128 or 256 bits which makes it easier for man-in-the-middle attackers to decrypt or intercept SSH sessions via unspecified vectors aka a \bits/bytes confusion bug.\