ba442a7 | Matt Caswell | 15 January 2015, 15:08:48 UTC | Prepare for 0.9.8zf-dev Reviewed-by: Stephen Henson <steve@openssl.org> | 15 January 2015, 15:08:48 UTC |
e8ccaee | Matt Caswell | 15 January 2015, 15:05:59 UTC | Prepare for 0.9.8ze release Reviewed-by: Stephen Henson <steve@openssl.org> | 15 January 2015, 15:05:59 UTC |
60431d0 | Matt Caswell | 15 January 2015, 15:05:59 UTC | make update Reviewed-by: Stephen Henson <steve@openssl.org> | 15 January 2015, 15:05:59 UTC |
346a46f | Matt Caswell | 15 January 2015, 13:04:01 UTC | Updates to CHANGES and NEWS Reviewed-by: Dr Stephen Henson <steve@openssl.org> | 15 January 2015, 13:19:56 UTC |
56abaa1 | Matt Caswell | 10 January 2015, 23:36:28 UTC | Fix warning where BIO_FLAGS_UPLINK was being redefined. This warning breaks the build in 1.0.0 and 0.9.8 Reviewed-by: Andy Polyakov <appro@openssl.org> (cherry picked from commit b1ffc6ca1c387efad0772c16dfe426afef45dc4f) | 13 January 2015, 11:26:07 UTC |
8b8a48d | Matt Caswell | 09 January 2015, 14:06:36 UTC | Avoid deprecation problems in Visual Studio 13 Reviewed-by: Andy Polyakov <appro@openssl.org> (cherry picked from commit 86d21d0b9577322ac5da0114c5fac16eb49b4cef) Conflicts: e_os.h | 13 January 2015, 09:50:04 UTC |
09caf4f | Dr. Stephen Henson | 25 February 2014, 12:11:22 UTC | Avoid Windows 8 Getversion deprecated errors. Windows 8 SDKs complain that GetVersion() is deprecated. We only use GetVersion like this: (GetVersion() < 0x80000000) which checks if the Windows version is NT based. Use a macro check_winnt() which uses GetVersion() on older SDK versions and true otherwise. (cherry picked from commit a4cc3c8041104896d51ae12ef7b678c31808ce52) Conflicts: apps/apps.c crypto/bio/bss_log.c Backported by Matt Caswell <matt@openssl.org> Reviewed-by: Tim Hudson <tjh@openss.org> | 13 January 2015, 09:30:24 UTC |
9793a07 | Matt Caswell | 09 January 2015, 23:01:20 UTC | Further windows specific .gitignore entries Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org> (cherry picked from commit 41c9cfbc4ee7345547fb98cccb8511f082f0910b) | 09 January 2015, 23:41:18 UTC |
aa9296e | Matt Caswell | 09 January 2015, 10:19:10 UTC | Update .gitignore with windows files to be excluded from git Reviewed-by: Tim Hudson <tjh@openssl.org> Conflicts: .gitignore (cherry picked from commit 04f670cf3d8f22e0d197a071d2db536fb7ebd9c7) Conflicts: .gitignore | 09 January 2015, 11:32:46 UTC |
bc253b0 | Matt Caswell | 08 January 2015, 14:36:15 UTC | Prepare for 0.9.8ze-dev Reviewed-by: Stephen Henson <steve@openssl.org> | 08 January 2015, 14:36:15 UTC |
b873409 | Matt Caswell | 08 January 2015, 14:33:47 UTC | Prepare for 0.9.8zd release Reviewed-by: Stephen Henson <steve@openssl.org> | 08 January 2015, 14:33:47 UTC |
f89250f | Matt Caswell | 08 January 2015, 14:33:47 UTC | make update Reviewed-by: Stephen Henson <steve@openssl.org> | 08 January 2015, 14:33:47 UTC |
1dc6a54 | Matt Caswell | 08 January 2015, 13:37:28 UTC | CHANGES and NEWS updates for release Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Steve Henson <steve@openssl.org> | 08 January 2015, 14:31:42 UTC |
a4aa188 | Dr. Stephen Henson | 06 January 2015, 14:28:34 UTC | Fix typo. Fix typo in ssl3_get_cert_verify: we can only skip certificate verify message if certificate is absent. NB: OpenSSL 0.9.8 is NOT vulnerable to CVE-2015-0205 as it doesn't support DH certificates and this typo prohibits skipping of certificate verify message for sign only certificates anyway. Reviewed-by: Matt Caswell <matt@openssl.org> | 08 January 2015, 14:31:19 UTC |
50befdb | Matt Caswell | 03 January 2015, 00:54:35 UTC | Follow on from CVE-2014-3571. This fixes the code that was the original source of the crash due to p being NULL. Steve's fix prevents this situation from occuring - however this is by no means obvious by looking at the code for dtls1_get_record. This fix just makes things look a bit more sane. Conflicts: ssl/d1_pkt.c Reviewed-by: Dr Stephen Henson <steve@openssl.org> | 08 January 2015, 14:18:52 UTC |
46bf0ba | Dr. Stephen Henson | 03 January 2015, 00:45:13 UTC | Fix crash in dtls1_get_record whilst in the listen state where you get two separate reads performed - one for the header and one for the body of the handshake record. CVE-2014-3571 Reviewed-by: Matt Caswell <matt@openssl.org> Conflicts: ssl/s3_pkt.c | 08 January 2015, 11:28:17 UTC |
4b4c0a1 | Andy Polyakov | 05 January 2015, 13:52:56 UTC | Fix for CVE-2014-3570. Reviewed-by: Emilia Kasper <emilia@openssl.org> (cherry picked from commit e793809ba50c1e90ab592fb640a856168e50f3de) | 08 January 2015, 11:28:17 UTC |
df70302 | Dr. Stephen Henson | 07 January 2015, 17:36:17 UTC | fix error discrepancy Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit 4a4d4158572fd8b3dc641851b8378e791df7972d) | 07 January 2015, 18:11:27 UTC |
9c6c664 | Dr. Stephen Henson | 06 January 2015, 21:12:15 UTC | use correct credit in CHANGES Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit 4138e3882556c762d77eb827b8be98507cde48df) Conflicts: CHANGES | 06 January 2015, 22:44:40 UTC |
11f719d | Dr. Stephen Henson | 06 January 2015, 20:55:38 UTC | use correct function name Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit cb62ab4b17818fe66d2fed0a7fe71969131c811b) | 06 January 2015, 21:05:22 UTC |
72f1815 | Dr. Stephen Henson | 23 October 2014, 16:09:57 UTC | Only allow ephemeral RSA keys in export ciphersuites. OpenSSL clients would tolerate temporary RSA keys in non-export ciphersuites. It also had an option SSL_OP_EPHEMERAL_RSA which enabled this server side. Remove both options as they are a protocol violation. Thanks to Karthikeyan Bhargavan for reporting this issue. (CVE-2015-0204) Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org> (cherry picked from commit 4b4c1fcc88aec8c9e001b0a0077d3cd4de1ed0e6) Conflicts: CHANGES doc/ssl/SSL_CTX_set_options.pod ssl/d1_srvr.c ssl/s3_srvr.c | 06 January 2015, 13:27:22 UTC |
e42a2ab | Dr. Stephen Henson | 24 October 2014, 11:30:33 UTC | ECDH downgrade bug fix. Fix bug where an OpenSSL client would accept a handshake using an ephemeral ECDH ciphersuites with the server key exchange message omitted. Thanks to Karthikeyan Bhargavan for reporting this issue. CVE-2014-3572 Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit b15f8769644b00ef7283521593360b7b2135cb63) Conflicts: CHANGES ssl/s3_clnt.c | 05 January 2015, 23:59:04 UTC |
ec2fede | Dr. Stephen Henson | 20 December 2014, 15:09:50 UTC | Fix various certificate fingerprint issues. By using non-DER or invalid encodings outside the signed portion of a certificate the fingerprint can be changed without breaking the signature. Although no details of the signed portion of the certificate can be changed this can cause problems with some applications: e.g. those using the certificate fingerprint for blacklists. 1. Reject signatures with non zero unused bits. If the BIT STRING containing the signature has non zero unused bits reject the signature. All current signature algorithms require zero unused bits. 2. Check certificate algorithm consistency. Check the AlgorithmIdentifier inside TBS matches the one in the certificate signature. NB: this will result in signature failure errors for some broken certificates. 3. Check DSA/ECDSA signatures use DER. Reencode DSA/ECDSA signatures and compare with the original received signature. Return an error if there is a mismatch. This will reject various cases including garbage after signature (thanks to Antti Karjalainen and Tuomo Untinen from the Codenomicon CROSS program for discovering this case) and use of BER or invalid ASN.1 INTEGERs (negative or with leading zeroes). CVE-2014-8275 Reviewed-by: Emilia Käsper <emilia@openssl.org> (cherry picked from commit 208a6012be3077d83df4475f32dd1b1446f3a02e) Conflicts: crypto/dsa/dsa_vrf.c | 05 January 2015, 16:37:10 UTC |
63f3c9e | Dr. Stephen Henson | 05 January 2015, 15:35:55 UTC | Update ordinals. Reviewed-by: Emilia Käsper <emilia@openssl.org> | 05 January 2015, 16:04:46 UTC |
c22e2dd | Dr. Stephen Henson | 14 December 2014, 23:14:15 UTC | Add ASN1_TYPE_cmp and X509_ALGOR_cmp. (these are needed for certificate fingerprint fixes) Reviewed-by: Emilia Käsper <emilia@openssl.org> | 05 January 2015, 15:34:49 UTC |
7fae32f | Kurt Roeckx | 15 December 2014, 16:15:16 UTC | Return error when a bit string indicates an invalid amount of bits left Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit 86edf13b1c97526c0cf63c37342aaa01f5442688) | 05 January 2015, 15:23:42 UTC |
5260f1a | Dr. Stephen Henson | 17 December 2014, 14:34:36 UTC | Reject invalid constructed encodings. According to X6.90 null, object identifier, boolean, integer and enumerated types can only have primitive encodings: return an error if any of these are received with a constructed encoding. Reviewed-by: Emilia Käsper <emilia@openssl.org> (cherry picked from commit f5e4b6b5b566320a8d774f9475540f7d0e6a704d) Conflicts: crypto/asn1/asn1_err.c | 05 January 2015, 15:22:34 UTC |
1cb10d9 | Emilia Kasper | 17 December 2014, 13:52:13 UTC | Revert "RT3425: constant-time evp_enc" Causes more problems than it fixes: even though error codes are not part of the stable API, several users rely on the specific error code, and the change breaks them. Conversely, we don't have any concrete use-cases for constant-time behaviour here. This reverts commit 1bb01b1b5f27a7de33e7a67946b8c001b54e09e9. Reviewed-by: Andy Polyakov <appro@openssl.org> | 17 December 2014, 13:57:16 UTC |
62abc80 | Kurt Roeckx | 10 November 2014, 18:03:03 UTC | Fix warning about negative unsigned intergers Reviewed-by: Richard Levitte <levitte@openssl.org> | 11 November 2014, 14:48:58 UTC |
722fa14 | Andy Polyakov | 29 October 2014, 09:48:39 UTC | md32_common.h: address compiler warning in HOST_c2l. Reviewed-by: Stephen Henson <steve@openssl.org> (cherry picked from commit d45282fc7cd9b97ed1479f8b8af713337fce57f5) | 29 October 2014, 09:56:27 UTC |
a2ca66f | Samuel Neves | 03 October 2014, 23:13:36 UTC | Use only unsigned arithmetic in constant-time operations Signed-off-by: Kurt Roeckx <kurt@roeckx.be> Reviewed-by: Emilia Käsper <emilia@openssl.org> | 28 October 2014, 19:57:47 UTC |
6a04b0d | Bodo Moeller | 21 October 2014, 20:41:27 UTC | Fix and improve SSL_MODE_SEND_FALLBACK_SCSV documentation. Reviewed-by: Rich Salz <rsalz@openssl.org> | 21 October 2014, 20:41:27 UTC |
1acca28 | Bodo Moeller | 21 October 2014, 20:33:03 UTC | When processing ClientHello.cipher_suites, don't ignore cipher suites listed after TLS_FALLBACK_SCSV. RT: 3575 Reviewed-by: Emilia Kasper <emilia@openssl.org> | 21 October 2014, 20:33:03 UTC |
d510c64 | Kurt Roeckx | 21 October 2014, 19:32:50 UTC | Fix warning Reviewed-by: Emilia Käsper <emilia@openssl.org> | 21 October 2014, 19:32:50 UTC |
b829247 | Kurt Roeckx | 21 October 2014, 18:45:15 UTC | Keep old method in case of an unsupported protocol When we're configured with no-ssl3 and we receive an SSL v3 Client Hello, we set the method to NULL. We didn't used to do that, and it breaks things. This is a regression introduced in 62f45cc27d07187b59551e4fad3db4e52ea73f2c. Keep the old method since the code is not able to deal with a NULL method at this time. CVE-2014-3569, PR#3571 Reviewed-by: Emilia Käsper <emilia@openssl.org> (cherry picked from commit 392fa7a952e97d82eac6958c81ed1e256e6b8ca5) | 21 October 2014, 19:19:48 UTC |
cbb6cca | Tim Hudson | 20 October 2014, 05:23:54 UTC | no-ssl2 with no-ssl3 does not mean drop the ssl lib Reviewed-by: Geoff Thorpe <geoff@openssl.org> | 20 October 2014, 05:23:54 UTC |
e369af3 | Tim Hudson | 25 September 2014, 06:04:35 UTC | Add constant_time_locl.h to HEADERS, so the Win32 compile picks it up correctly. Reviewed-by: Richard Levitte <levitte@openssl.org> (cherry picked from commit e2e5326e5b068411999f62b4ba67835d64764ca5) | 17 October 2014, 12:04:08 UTC |
15b7f5b | Richard Levitte | 24 September 2014, 20:59:37 UTC | Include "constant_time_locl.h" rather than "../constant_time_locl.h". The different -I compiler parameters will take care of the rest... Reviewed-by: Tim Hudson <tjh@openssl.org> (cherry picked from commit 8202802fadf7f70c656b92f3697da39c9c4271d7) Conflicts: crypto/evp/evp_enc.c | 17 October 2014, 12:03:57 UTC |
9880f63 | Andy Polyakov | 30 September 2014, 19:05:33 UTC | e_os.h: refine inline override logic (to address warnings in debug build). Reviewed-by: Dr Stephen Henson <steve@openssl.org> (cherry picked from commit 55c7a4cf112bf154ed405ee05a6b7924b6b1ba92) | 17 October 2014, 10:02:00 UTC |
af32df0 | Andy Polyakov | 24 September 2014, 22:32:56 UTC | e_os.h: allow inline functions to be compiled by legacy compilers. Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit 40155f408985aff2e9f1b61b7cb04a3e518633a1) Conflicts: e_os.h | 17 October 2014, 10:00:53 UTC |
bfb7bf1 | Kurt Cancemi | 28 September 2014, 19:28:49 UTC | RT3547: Add missing static qualifier Reviewed-by: Ben Laurie <ben@openssl.org> (cherry picked from commit 87d388c955c14a7c1371f9c7555fb429a406a3d3) | 17 October 2014, 09:48:55 UTC |
f33636f | Dr. Stephen Henson | 16 October 2014, 03:18:50 UTC | Don't try 1**0 test with FIPS. The 1**0 test will fail for FIPS capable builds because it uses the old BIGNUM code in the 1.2 FIPS module which can't be fixed. Reviewed-by: Emilia Käsper <emilia@openssl.org> | 16 October 2014, 03:40:50 UTC |
94f735c | Matt Caswell | 15 October 2014, 12:49:42 UTC | Prepare for 0.9.8zd-dev Reviewed-by: Stephen Henson <steve@openssl.org> | 15 October 2014, 12:49:42 UTC |
3621621 | Matt Caswell | 15 October 2014, 12:48:52 UTC | Prepare for 0.9.8zc release Reviewed-by: Stephen Henson <steve@openssl.org> | 15 October 2014, 12:48:52 UTC |
115eaf4 | Matt Caswell | 15 October 2014, 12:48:52 UTC | make update Reviewed-by: Stephen Henson <steve@openssl.org> | 15 October 2014, 12:48:52 UTC |
53ce564 | Matt Caswell | 15 October 2014, 11:31:21 UTC | Updates to NEWS Reviewed-by: Dr Stephen Henson <steve@openssl.org> | 15 October 2014, 12:46:57 UTC |
4d2efa2 | Matt Caswell | 15 October 2014, 09:52:00 UTC | Updates to CHANGES file Reviewed-by: Bodo Möller <bodo@openssl.org> | 15 October 2014, 12:46:57 UTC |
cd332a0 | Geoff Thorpe | 15 October 2014, 07:25:50 UTC | Fix no-ssl3 configuration option CVE-2014-3568 Reviewed-by: Emilia Kasper <emilia@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> | 15 October 2014, 12:46:57 UTC |
2ed80d1 | Dr. Stephen Henson | 15 October 2014, 01:01:16 UTC | Fix for session tickets memory leak. CVE-2014-3567 Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit 90e53055939db40cf0fac1ad0c59630280aeee86) | 15 October 2014, 12:46:57 UTC |
d286606 | Bodo Moeller | 15 October 2014, 12:39:17 UTC | Fix SSL_R naming inconsistency. Reviewed-by: Tim Hudson <tjh@openssl.org> | 15 October 2014, 12:39:17 UTC |
3f4d81e | Bodo Moeller | 15 October 2014, 09:15:58 UTC | Add TLS_FALLBACK_SCSV documentation, and move s_client -fallback_scsv handling out of #ifndef OPENSSL_NO_DTLS1 section. Reviewed-by: Rich Salz <rsalz@openssl.org> | 15 October 2014, 09:15:58 UTC |
dc5dfe4 | Bodo Moeller | 15 October 2014, 02:26:29 UTC | Oops -- fix typo in coment added with TLS_FALLBACK_SCSV support. Reviewed-by: Steve Henson <steve@openss.org> | 15 October 2014, 02:26:29 UTC |
c6a8764 | Bodo Moeller | 15 October 2014, 02:18:29 UTC | Support TLS_FALLBACK_SCSV. Reviewed-by: Stephen Henson <steve@openssl.org> | 15 October 2014, 02:18:29 UTC |
5a7fc89 | Dr. Stephen Henson | 29 September 2014, 11:16:13 UTC | Add additional DigestInfo checks. Reencode DigestInto in DER and check against the original: this will reject any improperly encoded DigestInfo structures. Note: this is a precautionary measure, there is no known attack which can exploit this. Thanks to Brian Smith for reporting this issue. Reviewed-by: Tim Hudson <tjh@openssl.org> | 29 September 2014, 11:31:29 UTC |
116fd37 | Emilia Kasper | 25 September 2014, 11:39:21 UTC | Add missing tests Accidentally omitted from commit 455b65dfab0de51c9f67b3c909311770f2b3f801 Reviewed-by: Kurt Roeckx <kurt@openssl.org> (cherry picked from commit fdc35a9d3e8cf4cfd9330d5df9883f42cf5648ad) | 25 September 2014, 11:48:08 UTC |
1bb01b1 | Emilia Kasper | 05 September 2014, 12:47:33 UTC | RT3425: constant-time evp_enc Do the final padding check in EVP_DecryptFinal_ex in constant time to avoid a timing leak from padding failure. Reviewed-by: Rich Salz <rsalz@openssl.org> (cherry picked from commit b55ff319f880adc874b8c95957adf2003117d42b) Conflicts: crypto/evp/Makefile crypto/evp/evp_enc.c | 24 September 2014, 14:41:55 UTC |
699d78c | Emilia Kasper | 04 September 2014, 11:04:42 UTC | RT3067: simplify patch (Original commit adb46dbc6dd7347750df2468c93e8c34bcb93a4b) Use the new constant-time methods consistently in s3_srvr.c Reviewed-by: Kurt Roeckx <kurt@openssl.org> (cherry picked from commit 455b65dfab0de51c9f67b3c909311770f2b3f801) Conflicts: ssl/Makefile | 24 September 2014, 14:01:46 UTC |
43d613e | Adam Langley | 24 April 2013, 18:45:44 UTC | This change alters the processing of invalid, RSA pre-master secrets so that bad encryptions are treated like random session keys in constant time. (cherry picked from commit adb46dbc6dd7347750df2468c93e8c34bcb93a4b) Reviewed-by: Rich Salz <rsalz@openssl.org> | 24 September 2014, 14:00:16 UTC |
96e1015 | Emilia Kasper | 28 August 2014, 17:43:49 UTC | RT3066: rewrite RSA padding checks to be slightly more constant time. Also tweak s3_cbc.c to use new constant-time methods. Also fix memory leaks from internal errors in RSA_padding_check_PKCS1_OAEP_mgf1 This patch is based on the original RT submission by Adam Langley <agl@chromium.org>, as well as code from BoringSSL and OpenSSL. Reviewed-by: Kurt Roeckx <kurt@openssl.org> Conflicts: crypto/rsa/rsa_oaep.c | 24 September 2014, 12:39:44 UTC |
cf4b01a | Tim Hudson | 21 September 2014, 11:54:31 UTC | Fixed error introduced in commit f2be92b94dad3c6cbdf79d99a324804094cf1617 that fixed PR#3450 where an existing cast masked an issue when i was changed from int to long in that commit Picked up on z/linux (s390) where sizeof(int)!=sizeof(long) Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit b5ff559ff90124c6fd53bbb49dae5edb4e821e0a) | 21 September 2014, 20:31:05 UTC |
45d1295 | Adam Langley | 23 April 2013, 16:13:51 UTC | Ensure that x**0 mod 1 = 0. (cherry picked from commit 2b0180c37fa6ffc48ee40caa831ca398b828e680) Reviewed-by: Ben Laurie <ben@openssl.org> | 04 September 2014, 14:07:39 UTC |
0976ada | Richard Levitte | 14 August 2014, 23:24:34 UTC | Followup on RT3334 fix: make sure that a directory that's the empty string returns 0 with errno = ENOENT. Reviewed-by: Andy Polyakov <appro@openssl.org> (cherry picked from commit 360928b7d0f16dde70e26841bbf9e1af727e8b8f) | 03 September 2014, 20:26:24 UTC |
db5b0d9 | Phil Mesnier | 14 August 2014, 17:35:07 UTC | RT3334: Fix crypto/LPdir_win.c Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Andy Polyakov <appro@openssl.org> (cherry picked from commit 6a14fe7576e7a14a46ba14df8be8fe478536b4fb) | 03 September 2014, 20:26:24 UTC |
aeeedc8 | Emilia Kasper | 28 August 2014, 17:45:55 UTC | Make the inline const-time functions static. "inline" without static is not correct as the compiler may choose to ignore it and will then either emit an external definition, or expect one. Reviewed-by: Geoff Thorpe <geoff@openssl.org> (cherry picked from commit 86f50b36e63275a916b147f9d8764e3c0c060fdb) | 02 September 2014, 13:25:20 UTC |
c903866 | Matt Caswell | 29 August 2014, 20:25:42 UTC | Fixed double inclusion of string.h PR2693 Reviewed-by: Tim Hudson <tjh@openssl.org> (cherry picked from commit 5d33b70ef5a4768fdfb77a73f9817c4570613039) | 29 August 2014, 20:40:15 UTC |
9b20865 | Emilia Kasper | 28 August 2014, 13:33:34 UTC | Constant-time utilities Pull constant-time methods out to a separate header, add tests. Reviewed-by: Bodo Moeller <bodo@openssl.org> (cherry picked from commit 73729e4cf3961e36b5534d270c11ff7cd811aa43) Conflicts: ssl/Makefile test/Makefile | 28 August 2014, 15:28:42 UTC |
f54fab0 | Adam Langley | 19 August 2014, 15:57:53 UTC | RT3060: Limit the number of empty records. Limit the number of empty records that will be processed consecutively in order to prevent ssl3_get_record from never returning. Reported by "oftc_must_be_destroyed" and George Kadianakis. Reviewed-by: Bodo Moeller <bodo@openssl.org> (cherry picked from commit 3aac17a82fbaf2bc23ee62f24611e5883d3e7b97) | 22 August 2014, 13:53:34 UTC |
b30aaaf | Emilia Kasper | 19 August 2014, 11:18:07 UTC | define inline for Visual Studio In Visual Studio, inline is available in C++ only, however __inline is available for C, see http://msdn.microsoft.com/en-us/library/z8y1yy88.aspx Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Dr Stephen Henson <steve@openssl.org> (cherry picked from commit f511b25a7370c775dc9fd6198dbacd1706cf242b) Conflicts: e_os.h | 21 August 2014, 14:08:55 UTC |
fee8d86 | Adam Langley | 03 June 2013, 19:45:11 UTC | Add volatile qualifications to two blocks of inline asm to stop GCC from eliminating them as dead code. Both volatile and "memory" are used because of some concern that the compiler may still cache values across the asm block without it, and because this was such a painful debugging session that I wanted to ensure that it's never repeated. (cherry picked from commit 7753a3a68431aa81b82beea4c3f5374b41454679) Conflicts: crypto/bn/asm/x86_64-gcc.c Reviewed-by: Rich Salz <rsalz@openssl.org> (cherry picked from commit a90b1e32d2f697d1aa39b49038469e2ea40d5e7b) | 19 August 2014, 15:12:08 UTC |
bf3e53a | Matt Caswell | 26 July 2014, 22:47:40 UTC | Fixed out-of-bounds read errors in ssl3_get_key_exchange. PR#3450 Conflicts: ssl/s3_clnt.c Reviewed-by: Emilia Käsper <emilia@openssl.org> | 15 August 2014, 22:34:45 UTC |
44a8fce | Bodo Moeller | 13 August 2014, 15:37:19 UTC | Further improve/fix ec_GFp_simple_points_make_affine (ecp_smpl.c) and group_order_tests (ectest.c). Also fix the EC_POINTs_mul documentation (ec.h). Reviewed-by: emilia@openssl.org Conflicts: crypto/ec/ectest.c Conflicts: crypto/ec/ec.h | 13 August 2014, 16:09:00 UTC |
4ff07f4 | Matt Caswell | 06 August 2014, 21:29:40 UTC | Prepare for 0.9.8zc-dev Reviewed-by: Stephen Henson <steve@openssl.org> | 06 August 2014, 21:29:40 UTC |
1c5f396 | Matt Caswell | 06 August 2014, 21:29:20 UTC | Prepare for 0.9.8zb release Reviewed-by: Stephen Henson <steve@openssl.org> | 06 August 2014, 21:29:20 UTC |
9fcaaef | Matt Caswell | 06 August 2014, 20:28:59 UTC | Updates to CHANGES and NEWS Reviewed-by: Kurt Roeckx <kurt@openssl.org> | 06 August 2014, 21:02:00 UTC |
b9a73f5 | Emilia Kasper | 02 July 2014, 17:02:33 UTC | Fix OID handling: - Upon parsing, reject OIDs with invalid base-128 encoding. - Always NUL-terminate the destination buffer in OBJ_obj2txt printing function. CVE-2014-3508 Reviewed-by: Dr. Stephen Henson <steve@openssl.org> Reviewed-by: Kurt Roeckx <kurt@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org> | 06 August 2014, 21:02:00 UTC |
bff5319 | Emilia Käsper | 24 July 2014, 20:15:29 UTC | Fix DTLS anonymous EC(DH) denial of service CVE-2014-3510 Reviewed-by: Dr. Stephen Henson <steve@openssl.org> | 06 August 2014, 21:02:00 UTC |
fc4bd2f | David Benjamin | 23 July 2014, 20:32:21 UTC | Fix protocol downgrade bug in case of fragmented packets CVE-2014-3511 Reviewed-by: Emilia Käsper <emilia@openssl.org> Reviewed-by: Bodo Möller <bodo@openssl.org> | 06 August 2014, 21:02:00 UTC |
4c836c9 | Adam Langley | 06 June 2014, 21:47:07 UTC | Remove some duplicate DTLS code. In |dtls1_process_out_of_seq_message|, we know that |frag_len| <= |msg_hdr->msg_len| so the later tests for |frag_len < msg_hdr->msg_len| can be more clearly written as |frag_len != msg_hdr->msg_len|, since that's the only remaining case. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Emilia Käsper <emilia@openssl.org> | 06 August 2014, 21:02:00 UTC |
6e14e7f | Matt Caswell | 24 July 2014, 22:54:28 UTC | Applying same fix as in dtls1_process_out_of_seq_message. A truncated DTLS fragment would cause *ok to be clear, but the return value would still be the number of bytes read. Problem identified by Emilia Käsper, based on previous issue/patch by Adam Langley. Reviewed-by: Emilia Käsper <emilia@openssl.org> | 06 August 2014, 21:02:00 UTC |
fc15c44 | Adam Langley | 06 June 2014, 21:44:20 UTC | Fix return code for truncated DTLS fragment. Previously, a truncated DTLS fragment in |dtls1_process_out_of_seq_message| would cause *ok to be cleared, but the return value would still be the number of bytes read. This would cause |dtls1_get_message| not to consider it an error and it would continue processing as normal until the calling function noticed that *ok was zero. I can't see an exploit here because |dtls1_get_message| uses |s->init_num| as the length, which will always be zero from what I can see. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Emilia Käsper <emilia@openssl.org> | 06 August 2014, 21:02:00 UTC |
445598b | Adam Langley | 06 June 2014, 21:30:33 UTC | Fix memory leak from zero-length DTLS fragments. The |pqueue_insert| function can fail if one attempts to insert a duplicate sequence number. When handling a fragment of an out of sequence message, |dtls1_process_out_of_seq_message| would not call |dtls1_reassemble_fragment| if the fragment's length was zero. It would then allocate a fresh fragment and attempt to insert it, but ignore the return value, leaking the fragment. This allows an attacker to exhaust the memory of a DTLS peer. Fixes CVE-2014-3507 Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Emilia Käsper <emilia@openssl.org> | 06 August 2014, 21:02:00 UTC |
338a5e7 | Matt Caswell | 06 June 2014, 21:25:52 UTC | Fix DTLS handshake message size checks. In |dtls1_reassemble_fragment|, the value of |msg_hdr->frag_off+frag_len| was being checked against the maximum handshake message size, but then |msg_len| bytes were allocated for the fragment buffer. This means that so long as the fragment was within the allowed size, the pending handshake message could consume 16MB + 2MB (for the reassembly bitmap). Approx 10 outstanding handshake messages are allowed, meaning that an attacker could consume ~180MB per DTLS connection. In the non-fragmented path (in |dtls1_process_out_of_seq_message|), no check was applied. Fixes CVE-2014-3506 Wholly based on patch by Adam Langley with one minor amendment. Reviewed-by: Emilia Käsper <emilia@openssl.org> | 06 August 2014, 21:02:00 UTC |
6a431cd | Matt Caswell | 24 July 2014, 22:33:34 UTC | Added comment for the frag->reassembly == NULL case as per feedback from Emilia Reviewed-by: Emilia Käsper <emilia@openssl.org> | 06 August 2014, 21:02:00 UTC |
1b7024f | Adam Langley | 06 June 2014, 21:19:21 UTC | Avoid double free when processing DTLS packets. The |item| variable, in both of these cases, may contain a pointer to a |pitem| structure within |s->d1->buffered_messages|. It was being freed in the error case while still being in |buffered_messages|. When the error later caused the |SSL*| to be destroyed, the item would be double freed. Thanks to Wah-Teh Chang for spotting that the fix in 1632ef74 was inconsistent with the other error paths (but correct). Fixes CVE-2014-3505 Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Emilia Käsper <emilia@openssl.org> | 06 August 2014, 21:02:00 UTC |
5021f63 | Dr. Stephen Henson | 06 August 2014, 20:51:00 UTC | fix warn_unused_result warnings Reviewed-by: Tim Hudson <tjh@openssl.org> | 06 August 2014, 20:59:15 UTC |
21d24dd | Dr. Stephen Henson | 17 March 2011, 14:43:13 UTC | Fix warnings about ignored return values. (cherry picked from commit 27131fe8f7418bf22b1e3000ea6a5d7b1ec8ebd4) Reviewed-by: Matt Caswell <matt@openssl.org> | 06 August 2014, 20:58:25 UTC |
681d11b | Bodo Moeller | 01 August 2014, 15:18:14 UTC | Simplify and fix ec_GFp_simple_points_make_affine (which didn't always handle value 0 correctly). Reviewed-by: emilia@openssl.org Conflicts: CHANGES crypto/ec/ectest.c | 01 August 2014, 15:59:31 UTC |
8c387e6 | Billy Brumley | 21 July 2014, 21:08:23 UTC | "EC_POINT_invert" was checking "dbl" function pointer instead of "invert". PR#2569 Reviewed-by: Rich Salz <rsalz@openssl.org> (cherry picked from commit cba11f57ce161fd301a72194827327128191de7e) | 21 July 2014, 21:29:35 UTC |
a117329 | Tim Hudson | 21 July 2014, 19:26:17 UTC | Remove old unused and unmaintained demonstration code. Reviewed-by: Dr. Stephen Henson <steve@openssl.org> (cherry picked from commit 62352b8138018775a4c085a105fccd9cdcb6323f) | 21 July 2014, 21:25:47 UTC |
f39dbff | Tim Hudson | 21 July 2014, 10:03:50 UTC | Minor documentation update removing "really" and a statement of opinion rather than a fact. Reviewed-by: Dr. Stephen Henson <steve@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (cherry picked from commit c8d133e4b6f1ed1b7ad3c1a6d2c62f460e26c050) | 21 July 2014, 10:23:09 UTC |
f6fefb0 | Dr. Stephen Henson | 19 July 2014, 13:20:05 UTC | Fix documentation for RSA_set_method(3) PR#1675 Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit 197400c3f0d617d71ad8167b52fb73046d334320) | 19 July 2014, 17:32:29 UTC |
febfaa5 | Jeffrey Walton | 17 July 2014, 10:25:02 UTC | Fix typo, add reference. PR#3456 Reviewed-by: Stephen Henson <steve@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (cherry picked from commit d48e78f0cf22aaddb563f4bcfccf25b1a45ac8a4) | 17 July 2014, 11:09:14 UTC |
cfed221 | Matt Caswell | 15 July 2014, 21:47:29 UTC | Add Matt Caswell's fingerprint, and general update on the fingerprints file to bring it up to date Reviewed-by: Tim Hudson <tjh@openssl.org> (cherry picked from commit 3bd548192a03142c80cf8bc68659d79dea20a738) | 15 July 2014, 22:25:07 UTC |
c2014ae | Dr. Stephen Henson | 15 July 2014, 19:22:39 UTC | Clarify -Verify and PSK. PR#3452 (cherry picked from commit ca2015a617842fed3d36ed4dcbbf8d5e27bc5216) | 15 July 2014, 19:24:55 UTC |
c3d317b | Dr. Stephen Henson | 15 July 2014, 17:21:59 UTC | Fix DTLS certificate requesting code. Use same logic when determining when to expect a client certificate for both TLS and DTLS. PR#3452 (cherry picked from commit c8d710dc5f83d69d802f941a4cc5895eb5fe3d65) | 15 July 2014, 17:24:14 UTC |
a214feb | Dr. Stephen Henson | 15 July 2014, 11:22:49 UTC | Don't allow -www etc options with DTLS. The options which emulate a web server don't make sense when doing DTLS. Exit with an error if an attempt is made to use them. PR#3453 (cherry picked from commit 58a2aaeade8bdecd0f9f0df41927f7cff3012547) | 15 July 2014, 11:27:29 UTC |
7a3a82d | Dr. Stephen Henson | 14 July 2014, 22:59:13 UTC | Use case insensitive compare for servername. PR#3445 (cherry picked from commit 1c3e9a7c67ccdc5e770829fe951e5832e600d377) | 14 July 2014, 23:00:39 UTC |
02fef91 | Matt Caswell | 10 July 2014, 22:47:31 UTC | Fixed valgrind complaint due to BN_consttime_swap reading uninitialised data. This is actually ok for this function, but initialised to zero anyway if PURIFY defined. This does have the impact of masking any *real* unitialised data reads in bn though. Patch based on approach suggested by Rich Salz. PR#3415 (cherry picked from commit 77747e2d9a5573b1dbc15e247ce18c03374c760c) | 13 July 2014, 21:36:03 UTC |
0b8cd5a | Richard Levitte | 13 July 2014, 17:11:29 UTC | * crypto/ui/ui_lib.c: misplaced brace in switch statement. Detected by dcruette@qualitesys.com (cherry picked from commit 8b5dd340919e511137696792279f595a70ae2762) | 13 July 2014, 17:17:21 UTC |
97f4e23 | Matt Caswell | 09 July 2014, 22:29:17 UTC | Fix memory leak in BIO_free if there is no destroy function. Based on an original patch by Neitrino Photonov <neitrinoph@gmail.com> PR#3439 (cherry picked from commit 66816c53bea0ecddb9448da7ea9a51a334496127) | 09 July 2014, 22:38:23 UTC |