• R/O
  • HTTP
  • SSH
  • HTTPS

提交

标签
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Saputra


Commit MetaInfo

修订版7b7f293fc0ab27c9971b14a326f6875f6df62a86 (tree)
时间2014-08-07 23:51:19
作者s_kawamoto <s_kawamoto@user...>
Commiters_kawamoto

Log Message

Update OpenSSL to 1.0.1i.

更改概述

差异

Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
Binary files a/contrib/openssl/bin/libeay32.dll and b/contrib/openssl/bin/libeay32.dll differ
Binary files a/contrib/openssl/bin/ssleay32.dll and b/contrib/openssl/bin/ssleay32.dll differ
--- a/contrib/openssl/changes.txt
+++ b/contrib/openssl/changes.txt
@@ -2,6 +2,92 @@
22 OpenSSL CHANGES
33 _______________
44
5+ Changes between 1.0.1h and 1.0.1i [6 Aug 2014]
6+
7+ *) Fix SRP buffer overrun vulnerability. Invalid parameters passed to the
8+ SRP code can be overrun an internal buffer. Add sanity check that
9+ g, A, B < N to SRP code.
10+
11+ Thanks to Sean Devlin and Watson Ladd of Cryptography Services, NCC
12+ Group for discovering this issue.
13+ (CVE-2014-3512)
14+ [Steve Henson]
15+
16+ *) A flaw in the OpenSSL SSL/TLS server code causes the server to negotiate
17+ TLS 1.0 instead of higher protocol versions when the ClientHello message
18+ is badly fragmented. This allows a man-in-the-middle attacker to force a
19+ downgrade to TLS 1.0 even if both the server and the client support a
20+ higher protocol version, by modifying the client's TLS records.
21+
22+ Thanks to David Benjamin and Adam Langley (Google) for discovering and
23+ researching this issue.
24+ (CVE-2014-3511)
25+ [David Benjamin]
26+
27+ *) OpenSSL DTLS clients enabling anonymous (EC)DH ciphersuites are subject
28+ to a denial of service attack. A malicious server can crash the client
29+ with a null pointer dereference (read) by specifying an anonymous (EC)DH
30+ ciphersuite and sending carefully crafted handshake messages.
31+
32+ Thanks to Felix Gröbert (Google) for discovering and researching this
33+ issue.
34+ (CVE-2014-3510)
35+ [Emilia Käsper]
36+
37+ *) By sending carefully crafted DTLS packets an attacker could cause openssl
38+ to leak memory. This can be exploited through a Denial of Service attack.
39+ Thanks to Adam Langley for discovering and researching this issue.
40+ (CVE-2014-3507)
41+ [Adam Langley]
42+
43+ *) An attacker can force openssl to consume large amounts of memory whilst
44+ processing DTLS handshake messages. This can be exploited through a
45+ Denial of Service attack.
46+ Thanks to Adam Langley for discovering and researching this issue.
47+ (CVE-2014-3506)
48+ [Adam Langley]
49+
50+ *) An attacker can force an error condition which causes openssl to crash
51+ whilst processing DTLS packets due to memory being freed twice. This
52+ can be exploited through a Denial of Service attack.
53+ Thanks to Adam Langley and Wan-Teh Chang for discovering and researching
54+ this issue.
55+ (CVE-2014-3505)
56+ [Adam Langley]
57+
58+ *) If a multithreaded client connects to a malicious server using a resumed
59+ session and the server sends an ec point format extension it could write
60+ up to 255 bytes to freed memory.
61+
62+ Thanks to Gabor Tyukasz (LogMeIn Inc) for discovering and researching this
63+ issue.
64+ (CVE-2014-3509)
65+ [Gabor Tyukasz]
66+
67+ *) A malicious server can crash an OpenSSL client with a null pointer
68+ dereference (read) by specifying an SRP ciphersuite even though it was not
69+ properly negotiated with the client. This can be exploited through a
70+ Denial of Service attack.
71+
72+ Thanks to Joonas Kuorilehto and Riku Hietamäki (Codenomicon) for
73+ discovering and researching this issue.
74+ (CVE-2014-5139)
75+ [Steve Henson]
76+
77+ *) A flaw in OBJ_obj2txt may cause pretty printing functions such as
78+ X509_name_oneline, X509_name_print_ex et al. to leak some information
79+ from the stack. Applications may be affected if they echo pretty printing
80+ output to the attacker.
81+
82+ Thanks to Ivan Fratric (Google) for discovering this issue.
83+ (CVE-2014-3508)
84+ [Emilia Käsper, and Steve Henson]
85+
86+ *) Fix ec_GFp_simple_points_make_affine (thus, EC_POINTs_mul etc.)
87+ for corner cases. (Certain input points at infinity could lead to
88+ bogus results, with non-infinity inputs mapped to infinity too.)
89+ [Bodo Moeller]
90+
591 Changes between 1.0.1g and 1.0.1h [5 Jun 2014]
692
793 *) Fix for SSL/TLS MITM flaw. An attacker using a carefully crafted
--- a/contrib/openssl/faq.txt
+++ b/contrib/openssl/faq.txt
@@ -113,11 +113,6 @@ that came with the version of OpenSSL you are using. The pod format
113113 documentation is included in each OpenSSL distribution under the docs
114114 directory.
115115
116-For information on parts of libcrypto that are not yet documented, you
117-might want to read Ariel Glenn's documentation on SSLeay 0.9, OpenSSL's
118-predecessor, at <URL: http://www.columbia.edu/~ariel/ssleay/>. Much
119-of this still applies to OpenSSL.
120-
121116 There is some documentation about certificate extensions and PKCS#12
122117 in doc/openssl.txt
123118
--- a/contrib/openssl/include/openssl/opensslconf.h
+++ b/contrib/openssl/include/openssl/opensslconf.h
@@ -35,6 +35,9 @@
3535 #ifndef OPENSSL_NO_STORE
3636 # define OPENSSL_NO_STORE
3737 #endif
38+#ifndef OPENSSL_NO_UNIT_TEST
39+# define OPENSSL_NO_UNIT_TEST
40+#endif
3841
3942 #endif /* OPENSSL_DOING_MAKEDEPEND */
4043
@@ -74,6 +77,9 @@
7477 # if defined(OPENSSL_NO_STORE) && !defined(NO_STORE)
7578 # define NO_STORE
7679 # endif
80+# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST)
81+# define NO_UNIT_TEST
82+# endif
7783 #endif
7884
7985 #define OPENSSL_CPUID_OBJ
--- a/contrib/openssl/include/openssl/opensslv.h
+++ b/contrib/openssl/include/openssl/opensslv.h
@@ -25,11 +25,11 @@
2525 * (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for
2626 * major minor fix final patch/beta)
2727 */
28-#define OPENSSL_VERSION_NUMBER 0x1000108fL
28+#define OPENSSL_VERSION_NUMBER 0x1000109fL
2929 #ifdef OPENSSL_FIPS
30-#define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1h-fips 5 Jun 2014"
30+#define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1i-fips 6 Aug 2014"
3131 #else
32-#define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1h 5 Jun 2014"
32+#define OPENSSL_VERSION_TEXT "OpenSSL 1.0.1i 6 Aug 2014"
3333 #endif
3434 #define OPENSSL_VERSION_PTEXT " part of " OPENSSL_VERSION_TEXT
3535
--- a/contrib/openssl/include/openssl/ssl.h
+++ b/contrib/openssl/include/openssl/ssl.h
@@ -264,6 +264,7 @@ extern "C" {
264264 #define SSL_TXT_aGOST94 "aGOST94"
265265 #define SSL_TXT_aGOST01 "aGOST01"
266266 #define SSL_TXT_aGOST "aGOST"
267+#define SSL_TXT_aSRP "aSRP"
267268
268269 #define SSL_TXT_DSS "DSS"
269270 #define SSL_TXT_DH "DH"
@@ -2055,6 +2056,10 @@ int SSL_set_session_secret_cb(SSL *s, tls_session_secret_cb_fn tls_session_secre
20552056 void SSL_set_debug(SSL *s, int debug);
20562057 int SSL_cache_hit(SSL *s);
20572058
2059+#ifndef OPENSSL_NO_UNIT_TEST
2060+const struct openssl_ssl_test_functions *SSL_test_functions(void);
2061+#endif
2062+
20582063 /* BEGIN ERROR CODES */
20592064 /* The following lines are auto generated by the script mkerr.pl. Any changes
20602065 * made after this point may be overwritten when the script is next run.
@@ -2320,6 +2325,7 @@ void ERR_load_SSL_strings(void);
23202325 #define SSL_R_BAD_SRP_B_LENGTH 348
23212326 #define SSL_R_BAD_SRP_G_LENGTH 349
23222327 #define SSL_R_BAD_SRP_N_LENGTH 350
2328+#define SSL_R_BAD_SRP_PARAMETERS 371
23232329 #define SSL_R_BAD_SRP_S_LENGTH 351
23242330 #define SSL_R_BAD_SRTP_MKI_VALUE 352
23252331 #define SSL_R_BAD_SRTP_PROTECTION_PROFILE_LIST 353
--- a/contrib/openssl/news.txt
+++ b/contrib/openssl/news.txt
@@ -5,10 +5,23 @@
55 This file gives a brief overview of the major changes between each OpenSSL
66 release. For more details please read the CHANGES file.
77
8+ Major changes between OpenSSL 1.0.1h and OpenSSL 1.0.1i [6 Aug 2014]
9+
10+ o Fix for CVE-2014-3512
11+ o Fix for CVE-2014-3511
12+ o Fix for CVE-2014-3510
13+ o Fix for CVE-2014-3507
14+ o Fix for CVE-2014-3506
15+ o Fix for CVE-2014-3505
16+ o Fix for CVE-2014-3509
17+ o Fix for CVE-2014-5139
18+ o Fix for CVE-2014-3508
19+
820 Major changes between OpenSSL 1.0.1g and OpenSSL 1.0.1h [5 Jun 2014]
921
1022 o Fix for CVE-2014-0224
1123 o Fix for CVE-2014-0221
24+ o Fix for CVE-2014-0198
1225 o Fix for CVE-2014-0195
1326 o Fix for CVE-2014-3470
1427 o Fix for CVE-2010-5298
--- a/contrib/openssl/readme.txt
+++ b/contrib/openssl/readme.txt
@@ -1,5 +1,5 @@
11
2- OpenSSL 1.0.1h 5 Jun 2014
2+ OpenSSL 1.0.1i 6 Aug 2014
33
44 Copyright (c) 1998-2011 The OpenSSL Project
55 Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
Binary files a/dist/amd64/libeay32.dll and b/dist/amd64/libeay32.dll differ
Binary files a/dist/amd64/ssleay32.dll and b/dist/amd64/ssleay32.dll differ
Binary files a/dist/libeay32.dll and b/dist/libeay32.dll differ
Binary files a/dist/ssleay32.dll and b/dist/ssleay32.dll differ
--- a/socketwrapper.c
+++ b/socketwrapper.c
@@ -153,15 +153,15 @@ BOOL LoadOpenSSL()
153153 #ifdef ENABLE_PROCESS_PROTECTION
154154 // 同梱するOpenSSLのバージョンに合わせてSHA1ハッシュ値を変更すること
155155 #if defined(_M_IX86)
156- // ssleay32.dll 1.0.1h
157- RegisterTrustedModuleSHA1Hash("\x1B\x27\x4E\x29\x14\x78\x72\x0D\x33\x73\xD5\x98\xCF\xEA\x32\x07\x2B\x35\x69\x66");
158- // libeay32.dll 1.0.1h
159- RegisterTrustedModuleSHA1Hash("\x1D\x2E\x70\x49\x84\x2C\xE9\x1F\x64\xE8\x84\xD4\x62\x5B\xF4\x34\x9A\x0F\x82\xFC");
156+ // ssleay32.dll 1.0.1i
157+ RegisterTrustedModuleSHA1Hash("\xA0\x76\x7F\x44\x19\x91\x72\xFB\xF5\x0E\x03\xC7\x79\xE9\x4B\x4D\x72\x95\xED\x5C");
158+ // libeay32.dll 1.0.1i
159+ RegisterTrustedModuleSHA1Hash("\x79\xDC\x7A\x43\x8D\x4B\x57\x60\xE6\xBE\x18\x98\xD4\x9A\x36\x99\x74\x6C\x16\x06");
160160 #elif defined(_M_AMD64)
161- // ssleay32.dll 1.0.1h
162- RegisterTrustedModuleSHA1Hash("\xB7\x5C\x31\xF3\x28\x73\xA0\x3C\x33\xDD\xBC\xB5\x8F\xD1\x38\xB6\xCE\x67\x4C\x40");
163- // libeay32.dll 1.0.1h
164- RegisterTrustedModuleSHA1Hash("\x5E\xBF\x56\x8C\xED\x06\xE8\x90\xE3\xC0\x3B\x6C\x51\x66\x4F\xC9\x9F\x1F\xF5\x89");
161+ // ssleay32.dll 1.0.1i
162+ RegisterTrustedModuleSHA1Hash("\x1E\x93\xF0\x23\xBB\x19\x62\x0C\x8A\x82\x1C\xE6\x4B\x68\x62\xE9\xB0\x7D\x37\x5C");
163+ // libeay32.dll 1.0.1i
164+ RegisterTrustedModuleSHA1Hash("\xF1\x77\xF4\x51\x23\xDF\x0F\x71\x33\xC5\x8C\xCF\xCF\x64\x09\xEF\xF9\x23\x1B\x30");
165165 #endif
166166 #endif
167167 g_hOpenSSL = LoadLibrary("ssleay32.dll");