The dtls1_reassemble_fragment function in d1_both.c in OpenSSL before 0.9.8za 1.0.0 before 1.0.0m and 1.0.1 before 1.0.1h does not properly validate fragment lengths in DTLS ClientHello messages which allows remote attackers to execute arbitrary code or cause a denial of service (buffer overflow and application crash) via a long non-initial fragment.