Skip to content

Commit 6b408ee

Browse files
snhensonandi34
authored andcommitted
Fix for CVE-2014-0195
A buffer overrun attack can be triggered by sending invalid DTLS fragments to an OpenSSL DTLS client or server. This is potentially exploitable to run arbitrary code on a vulnerable client or server. Fixed by adding consistency check for DTLS fragments. Thanks to Jüri Aedla for reporting this issue. (cherry picked from commit 1632ef744872edc2aa2a53d487d3e79c965a4ad3) Change-Id: Ie0b8939a71a6772616822df643f2168954b991ad
1 parent 21fd5a0 commit 6b408ee

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

ssl/d1_both.c

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -620,7 +620,16 @@ dtls1_reassemble_fragment(SSL *s, struct hm_header_st* msg_hdr, int *ok)
620620
frag->msg_header.frag_off = 0;
621621
}
622622
else
623+
{
623624
frag = (hm_fragment*) item->data;
625+
if (frag->msg_header.msg_len != msg_hdr->msg_len)
626+
{
627+
item = NULL;
628+
frag = NULL;
629+
goto err;
630+
}
631+
}
632+
624633

625634
/* If message is already reassembled, this must be a
626635
* retransmit and can be dropped.

0 commit comments

Comments
 (0)