- 17 Sep, 2015 1 commit
-
-
Matt Caswell authored
In master we have the function OPENSSL_clear_free(x,y), which immediately returns if x == NULL. In <=1.0.2 this function does not exist so we have to do: OPENSSL_cleanse(x, y); OPENSSL_free(x); However, previously, OPENSSL_cleanse did not check that if x == NULL, so the real equivalent check would have to be: if (x != NULL) OPENSSL_cleanse(x, y); OPENSSL_free(x); It would be easy to get this wrong during cherry-picking to other branches and therefore, for safety, it is best to just ensure OPENSSL_cleanse also checks for NULL. Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 020d8fc8)
-
- 01 Sep, 2015 1 commit
-
-
Matt Caswell authored
Builds using no-tlsext in 1.0.0 and 0.9.8 are broken. This commit fixes the issue. The same commit is applied to 1.0.1 and 1.0.2 branches for code consistency. However this commit will not fix no-tlsext in those branches which have always been broken for other reasons. The commit is not applied to master at all, because no-tlsext has been completely removed from that branch. Based on a patch by Marc Branchaud <marcnarc@xiplink.com> Reviewed-by:
Emilia Käsper <emilia@openssl.org> (cherry picked from commit 9a931208) Conflicts: ssl/ssl_sess.c
-
- 31 Aug, 2015 4 commits
-
-
Richard Levitte authored
Because we recently encourage people to have a .dir-locals.el, it's a good idea to ignore it on a git level. Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit d7c02691)
-
Richard Levitte authored
Apparently, emacs sees changes to auto-fill-mode as insecure Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 6dc08048)
-
Richard Levitte authored
This file, when copied to .dir-locals.el in the OpenSSL source top, will make sure that the CC mode style "OpenSSL-II" will be used for all C files. Additionally, I makes sure that tabs are never used as indentation character, regardless of the emacs mode, and that the fill column is 78. Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 0927f0d8)
-
Richard Levitte authored
This hopefully conforms closely enough to the current code style. Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit d9b3554b)
-
- 16 Aug, 2015 1 commit
-
-
Rich Salz authored
Best hope of keeping current. Reviewed-by:
Tim Hudson <tjh@openssl.org> (cherry picked from commit 4f46473a)
-
- 29 Jul, 2015 1 commit
-
-
Rich Salz authored
Reviewed-by:
Matt Caswell <matt@openssl.org> (cherry picked from commit 932af161)
-
- 10 Jul, 2015 2 commits
-
-
Richard Levitte authored
Reviewed-by:
Matt Caswell <matt@openssl.org> (cherry picked from commit da24e6f8)
-
Richard Levitte authored
Instead of piping through tardy, and possibly suffering from bugs in certain versions, use --transform, --owner and --group directly with GNU tar (we already expect that tar variant). Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 27f98436) Conflicts: Makefile.org
-
- 06 Jul, 2015 1 commit
-
-
Dr. Stephen Henson authored
Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 5727582c) Conflicts: doc/crypto/X509_NAME_get_index_by_NID.pod
-
- 11 Jun, 2015 7 commits
-
-
Matt Caswell authored
Reviewed-by:
Stephen Henson <steve@openssl.org>
-
Matt Caswell authored
Reviewed-by:
Stephen Henson <steve@openssl.org>
-
Matt Caswell authored
Updates to CHANGES and NEWS to take account of the latest security fixes. Reviewed-by:
Rich Salz <rsalz@openssl.org>
-
Emilia Kasper authored
CVE-2015-1790 Reviewed-by:
Rich Salz <rsalz@openssl.org>
-
Emilia Kasper authored
Also tighten X509_cmp_time to reject more than three fractional seconds in the time; and to reject trailing garbage after the offset. CVE-2015-1789 Reviewed-by:
Viktor Dukhovni <viktor@openssl.org> Reviewed-by:
Richard Levitte <levitte@openssl.org>
-
Dr. Stephen Henson authored
Fix loop in do_free_upto if cmsbio is NULL: this will happen when attempting to verify and a digest is not recognised. Reported by Johannes Bauer. CVE-2015-1792 Reviewed-by:
Matt Caswell <matt@openssl.org>
-
Matt Caswell authored
Fix error handling in ssl_session_dup, as well as incorrect setting up of the session ticket. Follow on from CVE-2015-1791. Thanks to LibreSSL project for reporting these issues. Conflicts: ssl/ssl_sess.c Reviewed-by:
Tim Hudson <tjh@openssl.org>
-
- 10 Jun, 2015 2 commits
-
-
Matt Caswell authored
The function EC_POINT_is_on_curve does not return a boolean value. It returns 1 if the point is on the curve, 0 if it is not, and -1 on error. Many usages within OpenSSL were incorrectly using this function and therefore not correctly handling error conditions. With thanks to the Open Crypto Audit Project for reporting this issue. Reviewed-by:
Kurt Roeckx <kurt@openssl.org> (cherry picked from commit 68886be7) Conflicts: crypto/ec/ec2_oct.c crypto/ec/ecp_oct.c crypto/ec/ectest.c
-
Matt Caswell authored
The fix for CVE-2015-1791 introduced an error in ssl_session_dup for Kerberos. Reviewed-by:
Tim Hudson <tjh@openssl.org> (cherry picked from commit dcad51bc)
-
- 08 Jun, 2015 1 commit
-
-
Dr. Stephen Henson authored
Reviewed-by:
Tim Hudson <tjh@openssl.org> (cherry picked from commit 0fb99904)
-
- 04 Jun, 2015 2 commits
-
-
Matt Caswell authored
Ensure the Kerberos pre-master secret has OPENSSL_cleanse called on it. With thanks to the Open Crypto Audit Project for reporting this issue. Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 4e3dbe37)
-
Matt Caswell authored
A BIGNUM can have the value of -0. The function BN_bn2hex fails to account for this and can allocate a buffer one byte too short in the event of -0 being used, leading to a one byte buffer overrun. All usage within the OpenSSL library is considered safe. Any security risk is considered negligible. With thanks to Mateusz Kocielski (LogicalTrust), Marek Kroemeke and Filip Palian for discovering and reporting this issue. Reviewed-by:
Tim Hudson <tjh@openssl.org> (cherry picked from commit c5635307) Conflicts: crypto/bn/bn_print.c
-
- 02 Jun, 2015 3 commits
-
-
Richard Levitte authored
This is for consistency. Additionally, have its presence define OPENSSL_SYS_WINDOWS as well. Reviewed-by:
Matt Caswell <matt@openssl.org> (cherry picked from commit 3f131556) Conflicts: e_os2.h
-
Matt Caswell authored
If a NewSessionTicket is received by a multi-threaded client when attempting to reuse a previous ticket then a race condition can occur potentially leading to a double free of the ticket data. CVE-2015-1791 This also fixes RT#3808 where a session ID is changed for a session already in the client session cache. Since the session ID is the key to the cache this breaks the cache access. Parts of this patch were inspired by this Akamai change: https://github.com/akamai/openssl/commit/c0bf69a791239ceec64509f9f19fcafb2461b0d3 Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 27c76b9b) Conflicts: ssl/ssl.h ssl/ssl_err.c
-
Matt Caswell authored
This is a backport of commit e83ee04b from the master branch (and this has also been applied to 1.0.2). In 1.0.2 this was CVE-2015-0207. For other branches there is no known security issue, but this is being backported as a precautionary measure. The DTLSv1_listen function is intended to be stateless and processes the initial ClientHello from many peers. It is common for user code to loop over the call to DTLSv1_listen until a valid ClientHello is received with an associated cookie. A defect in the implementation of DTLSv1_listen means that state is preserved in the SSL object from one invokation to the next. Reviewed-by:
Richard Levitte <levitte@openssl.org> (cherry picked from commit cce3e4ad)
-
- 28 May, 2015 2 commits
-
-
Dr. Stephen Henson authored
Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 2849707f)
-
Dr. Stephen Henson authored
Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit f097f81c)
-
- 22 May, 2015 2 commits
-
-
Matt Caswell authored
If BN_rand is called with |bits| set to 1 and |top| set to 1 then a 1 byte buffer overflow can occur. There are no such instances within the OpenSSL at the moment. Thanks to Mateusz Kocielski (LogicalTrust), Marek Kroemeke, Filip Palian for discovering and reporting this issue. Reviewed-by:
Kurt Roeckx <kurt@openssl.org>
-
Matt Caswell authored
The functions BN_rshift and BN_lshift shift their arguments to the right or left by a specified number of bits. Unpredicatable results (including crashes) can occur if a negative number is supplied for the shift value. Thanks to Mateusz Kocielski (LogicalTrust), Marek Kroemeke and Filip Palian for discovering and reporting this issue. Reviewed-by:
Kurt Roeckx <kurt@openssl.org> (cherry picked from commit 7cc18d81) Conflicts: crypto/bn/bn.h crypto/bn/bn_err.c
-
- 13 May, 2015 1 commit
-
-
Rich Salz authored
The big "don't check for NULL" cleanup requires backporting some of the lowest-level functions to actually do nothing if NULL is given. This will make it easier to backport fixes to release branches, where master assumes those lower-level functions are "safe" This commit addresses those tickets: 3798 3799 3801. Reviewed-by:
Matt Caswell <matt@openssl.org> (cherry picked from commit f34b095f) (cherry picked from commit 690d040b)
-
- 18 Apr, 2015 1 commit
-
-
Dr. Stephen Henson authored
Fix bug where i2c_ASN1_INTEGER mishandles zero if it is marked as negative. Thanks to Huzaifa Sidhpurwala <huzaifas@redhat.com> and Hanno Böck <hanno@hboeck.de> for reporting this issue. Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit a0eed48d)
-
- 16 Apr, 2015 1 commit
-
-
Viktor Dukhovni authored
Reviewed-by:
Matt Caswell <gitlab@openssl.org>
-
- 14 Apr, 2015 2 commits
-
-
Matt Caswell authored
If OpenSSL is configured with no-tlsext then ssl_get_prev_session can read past the end of the ClientHello message if the session_id length in the ClientHello is invalid. This should not cause any security issues since the underlying buffer is 16k in size. It should never be possible to overrun by that many bytes. This is probably made redundant by the previous commit - but you can never be too careful. With thanks to Qinghao Tang for reporting this issue. Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit 5e0a80c1) Conflicts: ssl/ssl_sess.c
-
Matt Caswell authored
The ClientHello processing is insufficiently rigorous in its checks to make sure that we don't read past the end of the message. This does not have security implications due to the size of the underlying buffer - but still needs to be fixed. With thanks to Qinghao Tang for reporting this issue. Reviewed-by:
Rich Salz <rsalz@openssl.org> (cherry picked from commit c9642eb1ff79a30e2c7632ef8267cc34cc2b0d79)
-
- 10 Apr, 2015 1 commit
-
-
Dr. Stephen Henson authored
While *pval is usually a pointer in rare circumstances it can be a long value. One some platforms (e.g. WIN64) where sizeof(long) < sizeof(ASN1_VALUE *) this will write past the field. *pval is initialised correctly in the rest of ASN1_item_ex_new so setting it to NULL is unecessary anyway. Thanks to Julien Kauffmann for reporting this issue. Reviewed-by:
Richard Levitte <levitte@openssl.org> (cherry picked from commit f617b496) Conflicts: crypto/asn1/tasn_new.c
-
- 08 Apr, 2015 1 commit
-
-
Richard Levitte authored
Since source reformat, we ended up with some error reason string definitions that spanned two lines. That in itself is fine, but we sometimes edited them to provide better strings than what could be automatically determined from the reason macro, for example: {ERR_REASON(SSL_R_NO_GOST_CERTIFICATE_SENT_BY_PEER), "Peer haven't sent GOST certificate, required for selected ciphersuite"}, However, mkerr.pl didn't treat those two-line definitions right, and they ended up being retranslated to whatever the macro name would indicate, for example: {ERR_REASON(SSL_R_NO_GOST_CERTIFICATE_SENT_BY_PEER), "No gost certificate sent by peer"}, Clearly not what we wanted. This change fixes this problem. Reviewed-by:
Matt Caswell <matt@openssl.org> (cherry picked from commit 2cfdfe09) Conflicts: util/mkerr.pl
-
- 24 Mar, 2015 1 commit
-
-
Dr. Stephen Henson authored
If a set of certificates is supplied to OCSP_basic_verify use those in addition to any present in the OCSP response as untrusted CAs when verifying a certificate chain. PR#3668 Reviewed-by:
Matt Caswell <matt@openssl.org> (cherry picked from commit 4ca5efc2)
-
- 19 Mar, 2015 2 commits
-
-
Matt Caswell authored
Reviewed-by:
Richard Levitte <levitte@openssl.org>
-
Matt Caswell authored
Reviewed-by:
Richard Levitte <levitte@openssl.org>
-