Skip to content
This repository was archived by the owner on Apr 22, 2023. It is now read-only.

Commit 3b511a8

Browse files
jasnellJulien Gilli
authored and
Julien Gilli
committed
deps: upgrade to openssl-1.0.1m
Extract the tarball into deps/openssl/openssl PR: #9451 PR-URL: #9451 Reviewed-By: Julien Gilli <[email protected]> Conflicts: deps/openssl/openssl/apps/s_client.c
1 parent a5dbcc9 commit 3b511a8

File tree

1,214 files changed

+285075
-295796
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,214 files changed

+285075
-295796
lines changed

deps/openssl/openssl/CHANGES

Lines changed: 77 additions & 279 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,83 @@
22
OpenSSL CHANGES
33
_______________
44

5+
Changes between 1.0.1l and 1.0.1m [19 Mar 2015]
6+
7+
*) Segmentation fault in ASN1_TYPE_cmp fix
8+
9+
The function ASN1_TYPE_cmp will crash with an invalid read if an attempt is
10+
made to compare ASN.1 boolean types. Since ASN1_TYPE_cmp is used to check
11+
certificate signature algorithm consistency this can be used to crash any
12+
certificate verification operation and exploited in a DoS attack. Any
13+
application which performs certificate verification is vulnerable including
14+
OpenSSL clients and servers which enable client authentication.
15+
(CVE-2015-0286)
16+
[Stephen Henson]
17+
18+
*) ASN.1 structure reuse memory corruption fix
19+
20+
Reusing a structure in ASN.1 parsing may allow an attacker to cause
21+
memory corruption via an invalid write. Such reuse is and has been
22+
strongly discouraged and is believed to be rare.
23+
24+
Applications that parse structures containing CHOICE or ANY DEFINED BY
25+
components may be affected. Certificate parsing (d2i_X509 and related
26+
functions) are however not affected. OpenSSL clients and servers are
27+
not affected.
28+
(CVE-2015-0287)
29+
[Stephen Henson]
30+
31+
*) PKCS7 NULL pointer dereferences fix
32+
33+
The PKCS#7 parsing code does not handle missing outer ContentInfo
34+
correctly. An attacker can craft malformed ASN.1-encoded PKCS#7 blobs with
35+
missing content and trigger a NULL pointer dereference on parsing.
36+
37+
Applications that verify PKCS#7 signatures, decrypt PKCS#7 data or
38+
otherwise parse PKCS#7 structures from untrusted sources are
39+
affected. OpenSSL clients and servers are not affected.
40+
41+
This issue was reported to OpenSSL by Michal Zalewski (Google).
42+
(CVE-2015-0289)
43+
[Emilia K�sper]
44+
45+
*) DoS via reachable assert in SSLv2 servers fix
46+
47+
A malicious client can trigger an OPENSSL_assert (i.e., an abort) in
48+
servers that both support SSLv2 and enable export cipher suites by sending
49+
a specially crafted SSLv2 CLIENT-MASTER-KEY message.
50+
51+
This issue was discovered by Sean Burford (Google) and Emilia K�sper
52+
(OpenSSL development team).
53+
(CVE-2015-0293)
54+
[Emilia K�sper]
55+
56+
*) Use After Free following d2i_ECPrivatekey error fix
57+
58+
A malformed EC private key file consumed via the d2i_ECPrivateKey function
59+
could cause a use after free condition. This, in turn, could cause a double
60+
free in several private key parsing functions (such as d2i_PrivateKey
61+
or EVP_PKCS82PKEY) and could lead to a DoS attack or memory corruption
62+
for applications that receive EC private keys from untrusted
63+
sources. This scenario is considered rare.
64+
65+
This issue was discovered by the BoringSSL project and fixed in their
66+
commit 517073cd4b.
67+
(CVE-2015-0209)
68+
[Matt Caswell]
69+
70+
*) X509_to_X509_REQ NULL pointer deref fix
71+
72+
The function X509_to_X509_REQ will crash with a NULL pointer dereference if
73+
the certificate key is invalid. This function is rarely used in practice.
74+
75+
This issue was discovered by Brian Carpenter.
76+
(CVE-2015-0288)
77+
[Stephen Henson]
78+
79+
*) Removed the export ciphers from the DEFAULT ciphers
80+
[Kurt Roeckx]
81+
582
Changes between 1.0.1k and 1.0.1l [15 Jan 2015]
683

784
*) Build fixes for the Windows and OpenVMS platforms
@@ -771,63 +848,6 @@
771848
Add command line options to s_client/s_server.
772849
[Steve Henson]
773850

774-
Changes between 1.0.0j and 1.0.0k [5 Feb 2013]
775-
776-
*) Make the decoding of SSLv3, TLS and DTLS CBC records constant time.
777-
778-
This addresses the flaw in CBC record processing discovered by
779-
Nadhem Alfardan and Kenny Paterson. Details of this attack can be found
780-
at: http://www.isg.rhul.ac.uk/tls/
781-
782-
Thanks go to Nadhem Alfardan and Kenny Paterson of the Information
783-
Security Group at Royal Holloway, University of London
784-
(www.isg.rhul.ac.uk) for discovering this flaw and Adam Langley and
785-
Emilia K�sper for the initial patch.
786-
(CVE-2013-0169)
787-
[Emilia K�sper, Adam Langley, Ben Laurie, Andy Polyakov, Steve Henson]
788-
789-
*) Return an error when checking OCSP signatures when key is NULL.
790-
This fixes a DoS attack. (CVE-2013-0166)
791-
[Steve Henson]
792-
793-
*) Call OCSP Stapling callback after ciphersuite has been chosen, so
794-
the right response is stapled. Also change SSL_get_certificate()
795-
so it returns the certificate actually sent.
796-
See http://rt.openssl.org/Ticket/Display.html?id=2836.
797-
(This is a backport)
798-
[Rob Stradling <[email protected]>]
799-
800-
*) Fix possible deadlock when decoding public keys.
801-
[Steve Henson]
802-
803-
Changes between 1.0.0i and 1.0.0j [10 May 2012]
804-
805-
[NB: OpenSSL 1.0.0i and later 1.0.0 patch levels were released after
806-
OpenSSL 1.0.1.]
807-
808-
*) Sanity check record length before skipping explicit IV in DTLS
809-
to fix DoS attack.
810-
811-
Thanks to Codenomicon for discovering this issue using Fuzz-o-Matic
812-
fuzzing as a service testing platform.
813-
(CVE-2012-2333)
814-
[Steve Henson]
815-
816-
*) Initialise tkeylen properly when encrypting CMS messages.
817-
Thanks to Solar Designer of Openwall for reporting this issue.
818-
[Steve Henson]
819-
820-
Changes between 1.0.0h and 1.0.0i [19 Apr 2012]
821-
822-
*) Check for potentially exploitable overflows in asn1_d2i_read_bio
823-
BUF_mem_grow and BUF_mem_grow_clean. Refuse attempts to shrink buffer
824-
in CRYPTO_realloc_clean.
825-
826-
Thanks to Tavis Ormandy, Google Security Team, for discovering this
827-
issue and to Adam Langley <[email protected]> for fixing it.
828-
(CVE-2012-2110)
829-
[Adam Langley (Google), Tavis Ormandy, Google Security Team]
830-
831851
Changes between 1.0.0g and 1.0.0h [12 Mar 2012]
832852

833853
*) Fix MMA (Bleichenbacher's attack on PKCS #1 v1.5 RSA padding) weakness
@@ -1818,228 +1838,6 @@
18181838
*) Change 'Configure' script to enable Camellia by default.
18191839
[NTT]
18201840

1821-
Changes between 0.9.8x and 0.9.8y [5 Feb 2013]
1822-
1823-
*) Make the decoding of SSLv3, TLS and DTLS CBC records constant time.
1824-
1825-
This addresses the flaw in CBC record processing discovered by
1826-
Nadhem Alfardan and Kenny Paterson. Details of this attack can be found
1827-
at: http://www.isg.rhul.ac.uk/tls/
1828-
1829-
Thanks go to Nadhem Alfardan and Kenny Paterson of the Information
1830-
Security Group at Royal Holloway, University of London
1831-
(www.isg.rhul.ac.uk) for discovering this flaw and Adam Langley and
1832-
Emilia K�sper for the initial patch.
1833-
(CVE-2013-0169)
1834-
[Emilia K�sper, Adam Langley, Ben Laurie, Andy Polyakov, Steve Henson]
1835-
1836-
*) Return an error when checking OCSP signatures when key is NULL.
1837-
This fixes a DoS attack. (CVE-2013-0166)
1838-
[Steve Henson]
1839-
1840-
*) Call OCSP Stapling callback after ciphersuite has been chosen, so
1841-
the right response is stapled. Also change SSL_get_certificate()
1842-
so it returns the certificate actually sent.
1843-
See http://rt.openssl.org/Ticket/Display.html?id=2836.
1844-
(This is a backport)
1845-
[Rob Stradling <[email protected]>]
1846-
1847-
*) Fix possible deadlock when decoding public keys.
1848-
[Steve Henson]
1849-
1850-
Changes between 0.9.8w and 0.9.8x [10 May 2012]
1851-
1852-
*) Sanity check record length before skipping explicit IV in DTLS
1853-
to fix DoS attack.
1854-
1855-
Thanks to Codenomicon for discovering this issue using Fuzz-o-Matic
1856-
fuzzing as a service testing platform.
1857-
(CVE-2012-2333)
1858-
[Steve Henson]
1859-
1860-
*) Initialise tkeylen properly when encrypting CMS messages.
1861-
Thanks to Solar Designer of Openwall for reporting this issue.
1862-
[Steve Henson]
1863-
1864-
Changes between 0.9.8v and 0.9.8w [23 Apr 2012]
1865-
1866-
*) The fix for CVE-2012-2110 did not take into account that the
1867-
'len' argument to BUF_MEM_grow and BUF_MEM_grow_clean is an
1868-
int in OpenSSL 0.9.8, making it still vulnerable. Fix by
1869-
rejecting negative len parameter. (CVE-2012-2131)
1870-
[Tomas Hoger <[email protected]>]
1871-
1872-
Changes between 0.9.8u and 0.9.8v [19 Apr 2012]
1873-
1874-
*) Check for potentially exploitable overflows in asn1_d2i_read_bio
1875-
BUF_mem_grow and BUF_mem_grow_clean. Refuse attempts to shrink buffer
1876-
in CRYPTO_realloc_clean.
1877-
1878-
Thanks to Tavis Ormandy, Google Security Team, for discovering this
1879-
issue and to Adam Langley <[email protected]> for fixing it.
1880-
(CVE-2012-2110)
1881-
[Adam Langley (Google), Tavis Ormandy, Google Security Team]
1882-
1883-
Changes between 0.9.8t and 0.9.8u [12 Mar 2012]
1884-
1885-
*) Fix MMA (Bleichenbacher's attack on PKCS #1 v1.5 RSA padding) weakness
1886-
in CMS and PKCS7 code. When RSA decryption fails use a random key for
1887-
content decryption and always return the same error. Note: this attack
1888-
needs on average 2^20 messages so it only affects automated senders. The
1889-
old behaviour can be reenabled in the CMS code by setting the
1890-
CMS_DEBUG_DECRYPT flag: this is useful for debugging and testing where
1891-
an MMA defence is not necessary.
1892-
Thanks to Ivan Nestlerode <[email protected]> for discovering
1893-
this issue. (CVE-2012-0884)
1894-
[Steve Henson]
1895-
1896-
*) Fix CVE-2011-4619: make sure we really are receiving a
1897-
client hello before rejecting multiple SGC restarts. Thanks to
1898-
Ivan Nestlerode <[email protected]> for discovering this bug.
1899-
[Steve Henson]
1900-
1901-
Changes between 0.9.8s and 0.9.8t [18 Jan 2012]
1902-
1903-
*) Fix for DTLS DoS issue introduced by fix for CVE-2011-4109.
1904-
Thanks to Antonio Martin, Enterprise Secure Access Research and
1905-
Development, Cisco Systems, Inc. for discovering this bug and
1906-
preparing a fix. (CVE-2012-0050)
1907-
[Antonio Martin]
1908-
1909-
Changes between 0.9.8r and 0.9.8s [4 Jan 2012]
1910-
1911-
*) Nadhem Alfardan and Kenny Paterson have discovered an extension
1912-
of the Vaudenay padding oracle attack on CBC mode encryption
1913-
which enables an efficient plaintext recovery attack against
1914-
the OpenSSL implementation of DTLS. Their attack exploits timing
1915-
differences arising during decryption processing. A research
1916-
paper describing this attack can be found at:
1917-
http://www.isg.rhul.ac.uk/~kp/dtls.pdf
1918-
Thanks go to Nadhem Alfardan and Kenny Paterson of the Information
1919-
Security Group at Royal Holloway, University of London
1920-
(www.isg.rhul.ac.uk) for discovering this flaw and to Robin Seggelmann
1921-
<[email protected]> and Michael Tuexen <[email protected]>
1922-
for preparing the fix. (CVE-2011-4108)
1923-
[Robin Seggelmann, Michael Tuexen]
1924-
1925-
*) Stop policy check failure freeing same buffer twice. (CVE-2011-4109)
1926-
[Ben Laurie, Kasper <[email protected]>]
1927-
1928-
*) Clear bytes used for block padding of SSL 3.0 records.
1929-
(CVE-2011-4576)
1930-
[Adam Langley (Google)]
1931-
1932-
*) Only allow one SGC handshake restart for SSL/TLS. Thanks to George
1933-
Kadianakis <[email protected]> for discovering this issue and
1934-
Adam Langley for preparing the fix. (CVE-2011-4619)
1935-
[Adam Langley (Google)]
1936-
1937-
*) Prevent malformed RFC3779 data triggering an assertion failure.
1938-
Thanks to Andrew Chi, BBN Technologies, for discovering the flaw
1939-
and Rob Austein <[email protected]> for fixing it. (CVE-2011-4577)
1940-
[Rob Austein <[email protected]>]
1941-
1942-
*) Fix ssl_ciph.c set-up race.
1943-
[Adam Langley (Google)]
1944-
1945-
*) Fix spurious failures in ecdsatest.c.
1946-
[Emilia K�sper (Google)]
1947-
1948-
*) Fix the BIO_f_buffer() implementation (which was mixing different
1949-
interpretations of the '..._len' fields).
1950-
[Adam Langley (Google)]
1951-
1952-
*) Fix handling of BN_BLINDING: now BN_BLINDING_invert_ex (rather than
1953-
BN_BLINDING_invert_ex) calls BN_BLINDING_update, ensuring that concurrent
1954-
threads won't reuse the same blinding coefficients.
1955-
1956-
This also avoids the need to obtain the CRYPTO_LOCK_RSA_BLINDING
1957-
lock to call BN_BLINDING_invert_ex, and avoids one use of
1958-
BN_BLINDING_update for each BN_BLINDING structure (previously,
1959-
the last update always remained unused).
1960-
[Emilia K�sper (Google)]
1961-
1962-
*) Fix SSL memory handling for (EC)DH ciphersuites, in particular
1963-
for multi-threaded use of ECDH.
1964-
[Adam Langley (Google)]
1965-
1966-
*) Fix x509_name_ex_d2i memory leak on bad inputs.
1967-
[Bodo Moeller]
1968-
1969-
*) Add protection against ECDSA timing attacks as mentioned in the paper
1970-
by Billy Bob Brumley and Nicola Tuveri, see:
1971-
1972-
http://eprint.iacr.org/2011/232.pdf
1973-
1974-
[Billy Bob Brumley and Nicola Tuveri]
1975-
1976-
Changes between 0.9.8q and 0.9.8r [8 Feb 2011]
1977-
1978-
*) Fix parsing of OCSP stapling ClientHello extension. CVE-2011-0014
1979-
[Neel Mehta, Adam Langley, Bodo Moeller (Google)]
1980-
1981-
*) Fix bug in string printing code: if *any* escaping is enabled we must
1982-
escape the escape character (backslash) or the resulting string is
1983-
ambiguous.
1984-
[Steve Henson]
1985-
1986-
Changes between 0.9.8p and 0.9.8q [2 Dec 2010]
1987-
1988-
*) Disable code workaround for ancient and obsolete Netscape browsers
1989-
and servers: an attacker can use it in a ciphersuite downgrade attack.
1990-
Thanks to Martin Rex for discovering this bug. CVE-2010-4180
1991-
[Steve Henson]
1992-
1993-
*) Fixed J-PAKE implementation error, originally discovered by
1994-
Sebastien Martini, further info and confirmation from Stefan
1995-
Arentz and Feng Hao. Note that this fix is a security fix. CVE-2010-4252
1996-
[Ben Laurie]
1997-
1998-
Changes between 0.9.8o and 0.9.8p [16 Nov 2010]
1999-
2000-
*) Fix extension code to avoid race conditions which can result in a buffer
2001-
overrun vulnerability: resumed sessions must not be modified as they can
2002-
be shared by multiple threads. CVE-2010-3864
2003-
[Steve Henson]
2004-
2005-
*) Fix for double free bug in ssl/s3_clnt.c CVE-2010-2939
2006-
[Steve Henson]
2007-
2008-
*) Don't reencode certificate when calculating signature: cache and use
2009-
the original encoding instead. This makes signature verification of
2010-
some broken encodings work correctly.
2011-
[Steve Henson]
2012-
2013-
*) ec2_GF2m_simple_mul bugfix: compute correct result if the output EC_POINT
2014-
is also one of the inputs.
2015-
[Emilia K�sper <[email protected]> (Google)]
2016-
2017-
*) Don't repeatedly append PBE algorithms to table if they already exist.
2018-
Sort table on each new add. This effectively makes the table read only
2019-
after all algorithms are added and subsequent calls to PKCS12_pbe_add
2020-
etc are non-op.
2021-
[Steve Henson]
2022-
2023-
Changes between 0.9.8n and 0.9.8o [01 Jun 2010]
2024-
2025-
[NB: OpenSSL 0.9.8o and later 0.9.8 patch levels were released after
2026-
OpenSSL 1.0.0.]
2027-
2028-
*) Correct a typo in the CMS ASN1 module which can result in invalid memory
2029-
access or freeing data twice (CVE-2010-0742)
2030-
[Steve Henson, Ronald Moesbergen <[email protected]>]
2031-
2032-
*) Add SHA2 algorithms to SSL_library_init(). SHA2 is becoming far more
2033-
common in certificates and some applications which only call
2034-
SSL_library_init and not OpenSSL_add_all_algorithms() will fail.
2035-
[Steve Henson]
2036-
2037-
*) VMS fixes:
2038-
Reduce copying into .apps and .test in makevms.com
2039-
Don't try to use blank CA certificate in CA.com
2040-
Allow use of C files from original directories in maketests.com
2041-
[Steven M. Schweda" <[email protected]>]
2042-
20431841
Changes between 0.9.8m and 0.9.8n [24 Mar 2010]
20441842

20451843
*) When rejecting SSL/TLS records due to an incorrect version number, never

0 commit comments

Comments
 (0)