Sanity check record length before skipping explicit IV in TLS 1.2, 1.1 and

DTLS to fix DoS attack.

Thanks to Codenomicon for discovering this issue using Fuzz-o-Matic
fuzzing as a service testing platform.
(CVE-2012-2333)
This commit is contained in:
Dr. Stephen Henson
2012-05-10 16:03:52 +00:00
parent 7388b43cae
commit c46ecc3a55
3 changed files with 11 additions and 1 deletions

View File

@@ -260,7 +260,7 @@ int dtls1_enc(SSL *s, int send)
}
/* TLS 1.0 does not bound the number of padding bytes by the block size.
* All of them must have value 'padding_length'. */
if (i > (int)rec->length)
if (i + bs > (int)rec->length)
{
/* Incorrect padding. SSLerr() and ssl3_alert are done
* by caller: we don't want to reveal whether this is