Dr. Stephen Henson [Fri, 27 Jun 2014 02:17:15 +0000 (03:17 +0100)]
Fix OID encoding for one component.
OIDs with one component don't have an encoding.
PR#2556 (Bug#1)
Huzaifa Sidhpurwala [Thu, 26 Jun 2014 22:45:58 +0000 (23:45 +0100)]
Make sure BN_sqr can never return a negative value.
PR#3410
(cherry picked from commit
e14e764c0d5d469da63d0819c6ffc0e1e9e7f0bb)
Jenny Yung [Thu, 26 Jun 2014 22:30:57 +0000 (23:30 +0100)]
Memory allocation checks.
PR#3399.
Miod Vallat [Wed, 4 Jun 2014 07:59:58 +0000 (03:59 -0400)]
Fix off-by-one errors in ssl_cipher_get_evp()
In the ssl_cipher_get_evp() function, fix off-by-one errors in index validation before accessing arrays.
Bug discovered and fixed by Miod Vallat from the OpenBSD team.
PR#3375
Matt Caswell [Sun, 22 Jun 2014 22:20:19 +0000 (23:20 +0100)]
Revert "Fix off-by-one errors in ssl_cipher_get_evp()"
This reverts commit
29411a0c7a00a73e4ca42be8b5a7401d3bb5107a.
Incorrect attribution.
Dr. Stephen Henson [Sat, 14 Jun 2014 21:24:08 +0000 (22:24 +0100)]
Accept CCS after sending finished.
Allow CCS after finished has been sent by client: at this point
keys have been correctly set up so it is OK to accept CCS from
server. Without this renegotiation can sometimes fail.
PR#3400
(cherry picked from commit
99cd6a91fcb0931feaebbb4832681d40a66fad41)
Matt Caswell [Tue, 10 Jun 2014 22:24:28 +0000 (23:24 +0100)]
Fixed incorrect return code handling in ssl3_final_finish_mac.
Based on an original patch by Joel Sing (OpenBSD) who also originally identified the issue.
Matt Caswell [Fri, 13 Jun 2014 14:53:08 +0000 (15:53 +0100)]
Revert "Fixed incorrect return code handling in ssl3_final_finish_mac"
This reverts commit
9ab788aa23feaa0e3b9efc2213e0c27913f8d987.
Missing attribution
Kurt Cancemi [Wed, 4 Jun 2014 07:59:58 +0000 (03:59 -0400)]
Fix off-by-one errors in ssl_cipher_get_evp()
In the ssl_cipher_get_evp() function, fix off-by-one errors in index validation before accessing arrays.
PR#3375
Dr. Stephen Henson [Wed, 11 Jun 2014 13:31:08 +0000 (14:31 +0100)]
Fix compilation with no-comp
(cherry picked from commit
7239a09c7b5757ed8d0e9869f3e9b03c0e11f4d1)
Matt Caswell [Tue, 10 Jun 2014 22:24:28 +0000 (23:24 +0100)]
Fixed incorrect return code handling in ssl3_final_finish_mac
Hubert Kario [Tue, 10 Jun 2014 12:13:33 +0000 (14:13 +0200)]
backport changes to ciphers(1) man page
Backport of the patch:
add ECC strings to ciphers(1), point out difference between DH and ECDH
and few other changes applicable to the 1.0.1 code base.
* Make a clear distinction between DH and ECDH key exchange.
* Group all key exchange cipher suite identifiers, first DH then ECDH
* add descriptions for all supported *DH* identifiers
* add ECDSA authentication descriptions
* add example showing how to disable all suites that offer no
authentication or encryption
* backport listing of elliptic curve cipher suites.
* backport listing of TLS 1.2 cipher suites, add note that DH_RSA
and DH_DSS is not implemented in this version
* backport of description of PSK and listing of PSK cipher suites
* backport description of AES128, AES256 and AESGCM options
* backport description of CAMELLIA128, CAMELLIA256 options
Mike Bland [Sat, 7 Jun 2014 17:05:50 +0000 (13:05 -0400)]
Create test/testutil.h for unit test helper macros
Defines SETUP_TEST_FIXTURE and EXECUTE_TEST, and updates ssl/heartbeat_test.c
using these macros. SETUP_TEST_FIXTURE makes use of the new TEST_CASE_NAME
macro, defined to use __func__ or __FUNCTION__ on platforms that support those
symbols, or to use the file name and line number otherwise. This should fix
several reported build problems related to lack of C99 support.
Dr. Stephen Henson [Tue, 10 Jun 2014 13:47:29 +0000 (14:47 +0100)]
Fix null pointer errors.
PR#3394
(cherry picked from commit
7a9d59c148b773f59a41f8697eeecf369a0974c2)
Dr. Stephen Henson [Mon, 9 Jun 2014 11:03:12 +0000 (12:03 +0100)]
SRP ciphersuite correction.
SRP ciphersuites do not have no authentication. They have authentication
based on SRP. Add new SRP authentication flag and cipher string.
(cherry picked from commit
a86b88acc373ac1fb0ca709a5fb8a8fa74683f67)
Dr. Stephen Henson [Mon, 9 Jun 2014 07:55:37 +0000 (08:55 +0100)]
Update strength_bits for 3DES.
Fix strength_bits to 112 for 3DES.
(cherry picked from commit
837c203719205ab19b5609b2df7151be8df05687)
Kurt Roeckx [Sat, 7 Jun 2014 11:32:23 +0000 (13:32 +0200)]
Link heartbeat_test with the static version of the libraries
It's using an internal API that that might not be available in the shared
library.
Jakub Wilk [Sat, 7 Jun 2014 12:37:17 +0000 (14:37 +0200)]
Create ~/.rnd with mode 0600 instead of 0666
Because of a missing include <fcntl.h> we don't have O_CREATE and don't create
the file with open() using mode 0600 but fall back to using fopen() with the
default umask followed by a chmod().
Problem found by Jakub Wilk <jwilk@debian.org>.
Dr. Stephen Henson [Sat, 7 Jun 2014 17:18:41 +0000 (18:18 +0100)]
update NEWS
Dr. Stephen Henson [Sat, 7 Jun 2014 14:21:13 +0000 (15:21 +0100)]
Make tls_session_secret_cb work with CVE-2014-0224 fix.
If application uses tls_session_secret_cb for session resumption
set the CCS_OK flag.
(cherry picked from commit
953c592572e8811b7956cc09fbd8e98037068b58)
Matt Caswell [Sat, 7 Jun 2014 11:30:18 +0000 (12:30 +0100)]
Fixed minor duplication in docs
Dr. Stephen Henson [Thu, 5 Jun 2014 09:45:50 +0000 (10:45 +0100)]
Prepare for 1.0.1i-dev
Dr. Stephen Henson [Thu, 5 Jun 2014 09:45:00 +0000 (10:45 +0100)]
Prepare for 1.0.1h release
Dr. Stephen Henson [Thu, 5 Jun 2014 07:56:20 +0000 (08:56 +0100)]
Update CHANGES and NEWS
Dr. Stephen Henson [Thu, 29 May 2014 14:00:05 +0000 (15:00 +0100)]
Fix CVE-2014-3470
Check session_cert is not NULL before dereferencing it.
Dr. Stephen Henson [Fri, 16 May 2014 12:00:45 +0000 (13:00 +0100)]
Fix CVE-2014-0221
Unnecessary recursion when receiving a DTLS hello request can be used to
crash a DTLS client. Fixed by handling DTLS hello request without recursion.
Thanks to Imre Rad (Search-Lab Ltd.) for discovering this issue.
Dr. Stephen Henson [Fri, 16 May 2014 11:55:16 +0000 (12:55 +0100)]
Additional CVE-2014-0224 protection.
Return a fatal error if an attempt is made to use a zero length
master secret.
Dr. Stephen Henson [Fri, 16 May 2014 11:49:48 +0000 (12:49 +0100)]
Fix for CVE-2014-0224
Only accept change cipher spec when it is expected instead of at any
time. This prevents premature setting of session keys before the master
secret is determined which an attacker could use as a MITM attack.
Thanks to KIKUCHI Masashi (Lepidum Co. Ltd.) for reporting this issue
and providing the initial fix this patch is based on.
Dr. Stephen Henson [Tue, 13 May 2014 17:48:31 +0000 (18:48 +0100)]
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.
Dr. Stephen Henson [Thu, 5 Jun 2014 08:01:33 +0000 (09:01 +0100)]
make update
Libor Krystek [Tue, 3 Jun 2014 22:14:40 +0000 (23:14 +0100)]
Corrected OPENSSL_NO_EC_NISTP_64_GCC_128 usage in ec_lcl.h. PR#3370
David Benjamin [Mon, 2 Jun 2014 17:55:20 +0000 (18:55 +0100)]
Check there is enough room for extension.
(cherry picked from commit
7d89b3bf42e4b4067371ab33ef7631434e41d1e4)
zhu qun-ying [Mon, 2 Jun 2014 13:38:52 +0000 (14:38 +0100)]
Free up s->d1->buffered_app_data.q properly.
PR#3286
(cherry picked from commit
71e95000afb2227fe5cac1c79ae884338bcd8d0b)
Sami Farin [Mon, 2 Jun 2014 11:24:19 +0000 (12:24 +0100)]
Typo: set i to -1 before goto.
PR#3302
(cherry picked from commit
9717f01951f976f76dd40a38d9fc7307057fa4c4)
Matt Caswell [Sun, 1 Jun 2014 20:32:19 +0000 (21:32 +0100)]
Added SSLErr call for internal error in dtls1_buffer_record
David Ramos [Sun, 1 Jun 2014 20:28:41 +0000 (21:28 +0100)]
Delays the queue insertion until after the ssl3_setup_buffers() call due to use-after-free bug. PR#3362
Dr. Stephen Henson [Sun, 1 Jun 2014 15:25:43 +0000 (16:25 +0100)]
Recognise padding extension.
(cherry picked from commit
ea2bb861f0daaa20819bf9ac8c146f7593feacd4)
Conflicts:
apps/s_cb.c
(cherry picked from commit
14dc83ca779e91a267701a1fb05b2bbcf2cb63c4)
Dr. Stephen Henson [Sun, 1 Jun 2014 15:36:24 +0000 (16:36 +0100)]
Option to disable padding extension.
Add TLS padding extension to SSL_OP_ALL so it is used with other
"bugs" options and can be turned off.
This replaces SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG which is an ancient
option referring to SSLv2 and SSLREF.
PR#3336
Dr. Stephen Henson [Sun, 1 Jun 2014 14:03:00 +0000 (15:03 +0100)]
Set default global mask to UTF8 only.
(cherry picked from commit
3009244da47b989c4cc59ba02cf81a4e9d8f8431)
David Ramos [Sun, 1 Jun 2014 13:30:10 +0000 (14:30 +0100)]
Allocate extra space when NETSCAPE_HANG_BUG defined.
Make sure there is an extra 4 bytes for server done message when
NETSCAPE_HANG_BUG is defined.
PR#3361
David Ramos [Sun, 1 Jun 2014 12:03:05 +0000 (13:03 +0100)]
Initialise alg.
PR#3313
(cherry picked from commit
7e2c6f7eb01515a990f77fbc5441be8e1a17152a)
Dr. Stephen Henson [Fri, 30 May 2014 12:21:43 +0000 (13:21 +0100)]
Use correct digest when exporting keying material.
PR#3319
(cherry picked from commit
84691390eae86befd33c83721dacedb539ae34e6)
Dr. Stephen Henson [Fri, 30 May 2014 12:10:08 +0000 (13:10 +0100)]
Don't compile heartbeat test code on Windows (for now).
(cherry picked from commit
2c575907d2c8601a18716f718ce309ed4e1f1783)
Hubert Kario [Thu, 12 Sep 2013 09:37:12 +0000 (11:37 +0200)]
add description of -attime to man page
the verify app man page didn't describe the usage of attime option
even though it was listed as a valid option in the -help message.
This patch fixes this omission.
Hubert Kario [Tue, 10 Sep 2013 13:59:13 +0000 (15:59 +0200)]
add description of -no_ecdhe option to s_server man page
While the -help message references this option, the man page
doesn't mention the -no_ecdhe option.
This patch fixes this omission.
Dr. Stephen Henson [Thu, 29 May 2014 13:07:49 +0000 (14:07 +0100)]
Set version number correctly.
PR#3249
(cherry picked from commit
8909bf20269035d295743fca559207ef2eb84eb3)
František Bořánek [Thu, 29 May 2014 12:49:10 +0000 (13:49 +0100)]
Fix memory leak.
PR#3278
(cherry picked from commit
de56fe797081fc09ebd1add06d6e2df42a324fd5)
Martin Kaiser [Wed, 28 May 2014 09:16:06 +0000 (11:16 +0200)]
remove duplicate 0x for default RSASSA-PSS salt len
(cherry picked from commit
3820fec3a09faecba7fe9912aa20ef7fcda8337b)
Peter Mosmans [Tue, 27 May 2014 22:26:11 +0000 (23:26 +0100)]
Fix for test_bn regular expression to work on Windows using MSYS. PR#3346
Matt Caswell [Mon, 26 May 2014 23:26:55 +0000 (00:26 +0100)]
Fixed Windows compilation failure
Matt Caswell [Sun, 25 May 2014 22:37:53 +0000 (23:37 +0100)]
Fixed error in args for SSL_set_msg_callback and SSL_set_msg_callback_arg
Matt Caswell [Sat, 24 May 2014 22:55:27 +0000 (23:55 +0100)]
Fix for non compilation with TLS_DEBUG defined
Mike Bland [Thu, 22 May 2014 18:41:47 +0000 (14:41 -0400)]
Fix heartbeat_test for -DOPENSSL_NO_HEARTBEATS
Replaces the entire test with a trivial implementation when
OPENSSL_NO_HEARTBEATS is defined.
Matt Caswell [Wed, 21 May 2014 23:07:35 +0000 (00:07 +0100)]
Fixed minor copy&paste error, and stray space causing rendering problem
Dr. Stephen Henson [Wed, 21 May 2014 09:50:19 +0000 (10:50 +0100)]
Fix for PKCS12_create if no-rc2 specified.
Use triple DES for certificate encryption if no-rc2 is
specified.
PR#3357
(cherry picked from commit
4689c08453e95eeefcc88c9f32dc6e509f95caff)
Dr. Stephen Henson [Wed, 21 May 2014 09:39:11 +0000 (10:39 +0100)]
Change default cipher in smime app to des3.
PR#3357
(cherry picked from commit
ca3ffd9670f2b589bf8cc04923f953e06d6fbc58)
Dr. Stephen Henson [Tue, 20 May 2014 10:18:30 +0000 (11:18 +0100)]
For portability use BUF_strndup instead of strndup.
(cherry picked from commit
dcca7b13e9066443237dd3001ae52fd103151c98)
Janpopan [Sun, 4 May 2014 16:13:43 +0000 (18:13 +0200)]
Fix a wrong parameter count ERR_add_error_data
Ben Laurie [Mon, 19 May 2014 17:26:04 +0000 (18:26 +0100)]
Merge branch 'mbland-heartbeat-test-1.0.1' into OpenSSL_1_0_1-stable
Mike Bland [Wed, 16 Apr 2014 11:21:26 +0000 (07:21 -0400)]
Unit/regression test for TLS heartbeats.
Regression test against CVE-2014-0160 (Heartbleed).
More info: http://mike-bland.com/tags/heartbleed.html
(based on commit
35cb55988b75573105eefd00d27d0138eebe40b1)
Ben Laurie [Mon, 19 May 2014 17:21:39 +0000 (18:21 +0100)]
Allow the maximum value.
Ben Laurie [Mon, 19 May 2014 17:20:54 +0000 (18:20 +0100)]
Fix signed/unsigned warning.
Matt Caswell [Thu, 15 May 2014 20:13:38 +0000 (21:13 +0100)]
Moved note about lack of support for AEAD modes out of BUGS section to SUPPORTED CIPHERS section (bug has been fixed, but still no support for AEAD)
Dr. Stephen Henson [Thu, 15 May 2014 13:05:47 +0000 (14:05 +0100)]
Enc doesn't support AEAD ciphers.
Jeffrey Walton [Wed, 14 May 2014 21:49:30 +0000 (22:49 +0100)]
Fix grammar error in verify pod. PR#3355
Jeffrey Walton [Wed, 14 May 2014 21:48:26 +0000 (22:48 +0100)]
Add information to BUGS section of enc documentation. PR#3354
Michal Bozon [Wed, 14 May 2014 20:07:51 +0000 (21:07 +0100)]
Corrected POD syntax errors. PR#3353
Kurt Roeckx [Mon, 12 May 2014 16:19:14 +0000 (18:19 +0200)]
Check sk_SSL_CIPHER_num() after assigning sk.
Jean-Paul Calderone [Thu, 3 Apr 2014 00:47:38 +0000 (20:47 -0400)]
Correct the return type on the signature for X509_STORE_CTX_get_ex_data given in the pod file.
Serguei E. Leontiev [Sun, 11 May 2014 18:46:42 +0000 (19:46 +0100)]
Replace manual ASN1 decoder with ASN1_get_object
Replace manual ASN.1 decoder with ASN1_get object. This
will decode the tag and length properly and check against
it does not exceed the supplied buffer length.
PR#3335
(cherry picked from commit
b0308dddd1cc6a8e1de803ef29ba6da25ee072c2)
Matt Caswell [Sun, 11 May 2014 23:38:37 +0000 (00:38 +0100)]
Fixed NULL pointer dereference. See PR#3321
Kurt Roeckx [Thu, 1 May 2014 11:10:01 +0000 (13:10 +0200)]
Set authkey to NULL and check malloc return value.
Martin Brejcha [Thu, 1 May 2014 10:07:09 +0000 (12:07 +0200)]
dgram_sctp_ctrl: authkey memory leak
PR: 3327
Günther Noack [Thu, 1 May 2014 11:33:11 +0000 (13:33 +0200)]
Avoid out-of-bounds write in SSL_get_shared_ciphers
PR: 3317
Viktor Dukhovni [Sun, 11 May 2014 19:28:56 +0000 (20:28 +0100)]
Fix infinite loop. PR#3347
Tim Hudson [Sun, 11 May 2014 12:29:59 +0000 (13:29 +0100)]
safety check to ensure we dont send out beyond the users buffer
Dr. Stephen Henson [Thu, 8 May 2014 12:17:11 +0000 (13:17 +0100)]
Return an error if no recipient type matches.
If the key type does not match any CMS recipient type return
an error instead of using a random key (MMA mitigation). This
does not leak any useful information to an attacker.
PR#3348
Tim Hudson [Mon, 5 May 2014 00:53:39 +0000 (10:53 +1000)]
coverity 966576 - close socket in error path
Tim Hudson [Mon, 5 May 2014 00:39:30 +0000 (10:39 +1000)]
PR#3342 fix resource leak coverity issue 966577
Tim Hudson [Sun, 4 May 2014 22:22:42 +0000 (08:22 +1000)]
fix coverity issue 966597 - error line is not always initialised
Matt Caswell [Wed, 7 May 2014 22:21:02 +0000 (23:21 +0100)]
Fixed NULL pointer dereference in PKCS7_dataDecode reported by David Ramos in PR#3339
Geoff Thorpe [Sun, 4 May 2014 22:44:14 +0000 (18:44 -0400)]
evp: prevent underflow in base64 decoding
This patch resolves RT ticket #2608.
Thanks to Robert Dugal for originally spotting this, and to David
Ramos for noticing that the ball had been dropped.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Geoff Thorpe [Sun, 4 May 2014 20:19:22 +0000 (16:19 -0400)]
bignum: allow concurrent BN_MONT_CTX_set_locked()
The lazy-initialisation of BN_MONT_CTX was serialising all threads, as
noted by Daniel Sands and co at Sandia. This was to handle the case that
2 or more threads race to lazy-init the same context, but stunted all
scalability in the case where 2 or more threads are doing unrelated
things! We favour the latter case by punishing the former. The init work
gets done by each thread that finds the context to be uninitialised, and
we then lock the "set" logic after that work is done - the winning
thread's work gets used, the losing threads throw away what they've done.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Geoff Thorpe [Sun, 27 Apr 2014 20:06:50 +0000 (16:06 -0400)]
dso: eliminate VMS code on non-VMS systems
Even though the meat of dso_vms.c is compiled out on non-VMS builds,
the (pre-)compiler still traverses some of the macro handling. This
trips up at least one non-VMS build configuration, so this commit
makes the skip-VMS case more robust.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Dr. Stephen Henson [Tue, 6 May 2014 13:07:37 +0000 (14:07 +0100)]
Initialize num properly.
PR#3289
PR#3345
(cherry picked from commit
3ba1e406c2309adb427ced9815ebf05f5b58d155)
Dr. Stephen Henson [Tue, 6 May 2014 13:02:17 +0000 (14:02 +0100)]
Set Enveloped data version to 2 if ktri version not zero.
Tim Hudson [Sun, 4 May 2014 20:41:22 +0000 (06:41 +1000)]
- fix coverity issues 966593-966596
David Ramos [Sat, 3 May 2014 10:00:27 +0000 (12:00 +0200)]
Double free in i2o_ECPublicKey
PR: 3338
Jeff Trawick [Sun, 13 Apr 2014 13:10:17 +0000 (15:10 +0200)]
typo in SSL_get_peer_cert_chain docs
RT: 3304
Matt Caswell [Wed, 30 Apr 2014 23:23:57 +0000 (00:23 +0100)]
Fixed spelling error in error message. Fix supplied by Marcos Marado
Lubomir Rintel [Mon, 21 Oct 2013 09:03:01 +0000 (11:03 +0200)]
POD: Fix item numbering
Newer pod2man considers =item [1-9] part of a numbered list, while =item
0 starts an unnumbered list. Add a zero effect formatting mark to override
this.
doc/apps/smime.pod around line 315: Expected text after =item, not a
number
...
PR#3146
mancha [Fri, 25 Apr 2014 14:58:49 +0000 (14:58 +0000)]
Fix version documentation.
Specify -f is for compilation flags. Add -d to synopsis section.
(cherry picked from commit
006397ea62bbcae22c8664d53c2222b808c4bdd1)
Closes #79.
mancha [Thu, 24 Apr 2014 19:06:20 +0000 (19:06 +0000)]
Fix eckey_priv_encode()
Fix eckey_priv_encode to return an error on failure of i2d_ECPrivateKey.
Steve Marquess [Thu, 24 Apr 2014 11:13:05 +0000 (07:13 -0400)]
Add new sponsors
(cherry picked from commit
351f0a124bffaa94d2a8abdec2e7dde5ae9c457d)
Ben Laurie [Wed, 23 Apr 2014 06:24:03 +0000 (07:24 +0100)]
Fix use after free.
Ben Laurie [Tue, 22 Apr 2014 12:11:56 +0000 (13:11 +0100)]
Fix double frees.
Dr. Stephen Henson [Wed, 16 Apr 2014 11:15:43 +0000 (12:15 +0100)]
Document -debug_decrypt option.
(cherry picked from commit
0dd5b94aeb77c2982bdf6886962b7a8491c6c9ed)
Dr. Stephen Henson [Tue, 15 Apr 2014 17:48:54 +0000 (18:48 +0100)]
Extension checking fixes.
When looking for an extension we need to set the last found
position to -1 to properly search all extensions.
PR#3309.
(cherry picked from commit
300b9f0b704048f60776881f1d378c74d9c32fbd)
Dr. Stephen Henson [Tue, 15 Apr 2014 17:17:12 +0000 (18:17 +0100)]
Clarify CMS_decrypt behaviour.
(cherry picked from commit
5f8e9a477a18551052f2019c1f374061acbaa5e6)
Dr. Stephen Henson [Fri, 11 Apr 2014 01:50:51 +0000 (02:50 +0100)]
Add new key fingerprint.
(cherry picked from commit
3143a332e8f2f5ca1a6f0262a1a1a66103f2adf7)