Skip to content

Commit

Permalink
mbedtls: update to version 2.7.0
Browse files Browse the repository at this point in the history
This fixes the following security problems:
* CVE-2018-0488: Risk of remote code execution when truncated HMAC is enabled
* CVE-2018-0487: Risk of remote code execution when verifying RSASSA-PSS signatures

This release is also ABI incompatible with the previous one, but it is
API compatible.

Some functions used by a lot of other software was renamed and the old
function names are provided as a static inline now, but they are only
active when deprecated functions are allowed, deactivate the removal of
deprecated functions for now.

Also increase the PKG_RELEASE version to force a rebuild and update of
packages depending on mbedtls to handle the changed ABI.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
  • Loading branch information
hauke committed Mar 10, 2018
1 parent 58a95f0 commit f609913
Show file tree
Hide file tree
Showing 6 changed files with 42 additions and 53 deletions.
4 changes: 2 additions & 2 deletions package/libs/mbedtls/Makefile
Expand Up @@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk

PKG_NAME:=mbedtls
PKG_VERSION:=2.6.0
PKG_VERSION:=2.7.0
PKG_RELEASE:=1
PKG_USE_MIPS16:=0

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-gpl.tgz
PKG_SOURCE_URL:=https://tls.mbed.org/download/
PKG_HASH:=a99959d7360def22f9108d2d487c9de384fe76c349697176b1f22370080d5810
PKG_HASH:=2c6fe289b4b50bf67b4839e81b07fcf52a19f5129d0241d2aa4d49cb1ef11e4f

PKG_BUILD_PARALLEL:=1
PKG_LICENSE:=GPL-2.0+
Expand Down
83 changes: 36 additions & 47 deletions package/libs/mbedtls/patches/200-config.patch
@@ -1,15 +1,6 @@
--- a/include/mbedtls/config.h
+++ b/include/mbedtls/config.h
@@ -220,7 +220,7 @@
*
* Uncomment to get errors on using deprecated functions.
*/
-//#define MBEDTLS_DEPRECATED_REMOVED
+#define MBEDTLS_DEPRECATED_REMOVED

/* \} name SECTION: System support */

@@ -539,17 +539,17 @@
@@ -566,17 +566,17 @@
*
* Comment macros to disable the curve and functions for it
*/
Expand All @@ -35,7 +26,7 @@
#define MBEDTLS_ECP_DP_CURVE25519_ENABLED

/**
@@ -574,8 +574,8 @@
@@ -601,8 +601,8 @@
* Requires: MBEDTLS_HMAC_DRBG_C
*
* Comment this macro to disable deterministic ECDSA.
Expand All @@ -45,16 +36,16 @@

/**
* \def MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
@@ -621,7 +621,7 @@
* MBEDTLS_TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA
* MBEDTLS_TLS_DHE_PSK_WITH_RC4_128_SHA
@@ -655,7 +655,7 @@
* See dhm.h for more details.
*
*/
-#define MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED
+//#define MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED

/**
* \def MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
@@ -640,8 +640,8 @@
@@ -674,8 +674,8 @@
* MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256
* MBEDTLS_TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA
* MBEDTLS_TLS_ECDHE_PSK_WITH_RC4_128_SHA
Expand All @@ -64,7 +55,7 @@

/**
* \def MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
@@ -666,7 +666,7 @@
@@ -700,7 +700,7 @@
* MBEDTLS_TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA
* MBEDTLS_TLS_RSA_PSK_WITH_RC4_128_SHA
*/
Expand All @@ -73,7 +64,7 @@

/**
* \def MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
@@ -793,7 +793,7 @@
@@ -834,7 +834,7 @@
* MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256
* MBEDTLS_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384
*/
Expand All @@ -82,7 +73,7 @@

/**
* \def MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
@@ -817,7 +817,7 @@
@@ -858,7 +858,7 @@
* MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256
* MBEDTLS_TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384
*/
Expand All @@ -91,7 +82,7 @@

/**
* \def MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED
@@ -921,7 +921,7 @@
@@ -962,7 +962,7 @@
* This option is only useful if both MBEDTLS_SHA256_C and
* MBEDTLS_SHA512_C are defined. Otherwise the available hash module is used.
*/
Expand All @@ -100,7 +91,7 @@

/**
* \def MBEDTLS_ENTROPY_NV_SEED
@@ -1015,14 +1015,14 @@
@@ -1056,14 +1056,14 @@
* Uncomment this macro to disable the use of CRT in RSA.
*
*/
Expand All @@ -117,7 +108,7 @@

/**
* \def MBEDTLS_SHA256_SMALLER
@@ -1038,7 +1038,7 @@
@@ -1079,7 +1079,7 @@
*
* Uncomment to enable the smaller implementation of SHA256.
*/
Expand All @@ -126,17 +117,16 @@

/**
* \def MBEDTLS_SSL_ALL_ALERT_MESSAGES
@@ -1157,8 +1157,8 @@
* misuse/misunderstand.
@@ -1206,7 +1206,7 @@
* configuration of this extension).
*
* Comment this to disable support for renegotiation.
- */
#define MBEDTLS_SSL_RENEGOTIATION
+ */
*/
-#define MBEDTLS_SSL_RENEGOTIATION
+//#define MBEDTLS_SSL_RENEGOTIATION

/**
* \def MBEDTLS_SSL_SRV_SUPPORT_SSLV2_CLIENT_HELLO
@@ -1332,8 +1332,8 @@
@@ -1380,8 +1380,8 @@
* callbacks are provided by MBEDTLS_SSL_TICKET_C.
*
* Comment this macro to disable support for SSL session tickets
Expand All @@ -146,7 +136,7 @@

/**
* \def MBEDTLS_SSL_EXPORT_KEYS
@@ -1363,7 +1363,7 @@
@@ -1411,7 +1411,7 @@
*
* Comment this macro to disable support for truncated HMAC in SSL
*/
Expand All @@ -155,7 +145,7 @@

/**
* \def MBEDTLS_THREADING_ALT
@@ -1397,8 +1397,8 @@
@@ -1445,8 +1445,8 @@
* Requires: MBEDTLS_VERSION_C
*
* Comment this to disable run-time checking and save ROM space
Expand All @@ -165,7 +155,7 @@

/**
* \def MBEDTLS_X509_ALLOW_EXTENSIONS_NON_V3
@@ -1719,7 +1719,7 @@
@@ -1773,7 +1773,7 @@
* MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256
* MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256
*/
Expand All @@ -174,7 +164,7 @@

/**
* \def MBEDTLS_CCM_C
@@ -1733,7 +1733,7 @@
@@ -1787,7 +1787,7 @@
* This module enables the AES-CCM ciphersuites, if other requisites are
* enabled as well.
*/
Expand All @@ -183,7 +173,7 @@

/**
* \def MBEDTLS_CERTS_C
@@ -1745,7 +1745,7 @@
@@ -1799,7 +1799,7 @@
*
* This module is used for testing (ssl_client/server).
*/
Expand All @@ -192,7 +182,7 @@

/**
* \def MBEDTLS_CIPHER_C
@@ -1798,7 +1798,7 @@
@@ -1852,7 +1852,7 @@
*
* This module provides debugging functions.
*/
Expand All @@ -201,17 +191,16 @@

/**
* \def MBEDTLS_DES_C
@@ -1823,8 +1823,8 @@
* MBEDTLS_TLS_PSK_WITH_3DES_EDE_CBC_SHA
*
* PEM_PARSE uses DES/3DES for decrypting encrypted keys.
- */
#define MBEDTLS_DES_C
+ */
@@ -1881,7 +1881,7 @@
* \warning DES is considered a weak cipher and its use constitutes a
* security risk. We recommend considering stronger ciphers instead.
*/
-#define MBEDTLS_DES_C
+//#define MBEDTLS_DES_C

/**
* \def MBEDTLS_DHM_C
@@ -1978,8 +1978,8 @@
@@ -2042,8 +2042,8 @@
* Requires: MBEDTLS_MD_C
*
* Uncomment to enable the HMAC_DRBG random number geerator.
Expand All @@ -221,7 +210,7 @@

/**
* \def MBEDTLS_MD_C
@@ -2256,7 +2256,7 @@
@@ -2337,7 +2337,7 @@
* Caller: library/md.c
*
*/
Expand All @@ -230,7 +219,7 @@

/**
* \def MBEDTLS_RSA_C
@@ -2334,8 +2334,8 @@
@@ -2421,8 +2421,8 @@
* Caller:
*
* Requires: MBEDTLS_SSL_CACHE_C
Expand All @@ -240,7 +229,7 @@

/**
* \def MBEDTLS_SSL_COOKIE_C
@@ -2356,8 +2356,8 @@
@@ -2443,8 +2443,8 @@
* Caller:
*
* Requires: MBEDTLS_CIPHER_C
Expand All @@ -250,7 +239,7 @@

/**
* \def MBEDTLS_SSL_CLI_C
@@ -2456,8 +2456,8 @@
@@ -2543,8 +2543,8 @@
* Module: library/version.c
*
* This module provides run-time version information.
Expand All @@ -260,7 +249,7 @@

/**
* \def MBEDTLS_X509_USE_C
@@ -2567,7 +2567,7 @@
@@ -2654,7 +2654,7 @@
* Module: library/xtea.c
* Caller:
*/
Expand Down
2 changes: 1 addition & 1 deletion package/libs/ustream-ssl/Makefile
@@ -1,7 +1,7 @@
include $(TOPDIR)/rules.mk

PKG_NAME:=ustream-ssl
PKG_RELEASE:=2
PKG_RELEASE:=3

PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(LEDE_GIT)/project/ustream-ssl.git
Expand Down
2 changes: 1 addition & 1 deletion package/network/services/openvpn/Makefile
Expand Up @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=openvpn

PKG_VERSION:=2.4.4
PKG_RELEASE:=2
PKG_RELEASE:=3

PKG_SOURCE_URL:=\
https://build.openvpn.net/downloads/releases/ \
Expand Down
2 changes: 1 addition & 1 deletion package/network/utils/curl/Makefile
Expand Up @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk

PKG_NAME:=curl
PKG_VERSION:=7.52.1
PKG_RELEASE:=7
PKG_RELEASE:=8

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://curl.haxx.se/download/ \
Expand Down
2 changes: 1 addition & 1 deletion package/utils/px5g/Makefile
Expand Up @@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk

PKG_NAME:=px5g
PKG_RELEASE:=4
PKG_RELEASE:=5
PKG_LICENSE:=LGPL-2.1
PKG_BUILD_DIR:=$(BUILD_DIR)/px5g-$(BUILD_VARIANT)

Expand Down

0 comments on commit f609913

Please sign in to comment.