Fix: add length check for ssr auth_aes128_sha1 (#2129)

This commit is contained in:
Kaming Chan 2022-05-13 11:21:39 +08:00 committed by GitHub
parent 5dd94c8298
commit da7ffc0da9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -154,6 +154,9 @@ func (a *authAES128) Encode(buf *bytes.Buffer, b []byte) error {
}
func (a *authAES128) DecodePacket(b []byte) ([]byte, error) {
if len(b) < 4 {
return nil, errAuthAES128LengthError
}
if !bytes.Equal(a.hmac(a.Key, b[:len(b)-4])[:4], b[len(b)-4:]) {
return nil, errAuthAES128ChksumError
}