summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYi Zhao <yi.zhao@windriver.com>2021-10-28 14:48:57 +0800
committerJia Zhang <zhang.jia@linux.alibaba.com>2021-11-12 16:52:32 +0800
commit8226df83a60f2d156f22ac6acda5ad349dd5f65b (patch)
treead88f7d783cfc2f920cfb7269fe036909b1cc20c
parent1d1bd5934b8b734c6bec10594a7183a2669b61c7 (diff)
downloadmeta-secure-core-8226df83a60f2d156f22ac6acda5ad349dd5f65b.tar.gz
tpm2-tools: upgrade 4.1.3 -> 4.3.2
* Drop backported CVE patch. * License-Update: Add Copyrights and move it to doc directory. Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
-rw-r--r--meta-tpm2/recipes-tpm/tpm2-tools/files/CVE-2021-3565.patch53
-rw-r--r--meta-tpm2/recipes-tpm/tpm2-tools/tpm2-tools_4.3.2.bb (renamed from meta-tpm2/recipes-tpm/tpm2-tools/tpm2-tools_4.1.3.bb)7
2 files changed, 3 insertions, 57 deletions
diff --git a/meta-tpm2/recipes-tpm/tpm2-tools/files/CVE-2021-3565.patch b/meta-tpm2/recipes-tpm/tpm2-tools/files/CVE-2021-3565.patch
deleted file mode 100644
index 9402f1b..0000000
--- a/meta-tpm2/recipes-tpm/tpm2-tools/files/CVE-2021-3565.patch
+++ /dev/null
@@ -1,53 +0,0 @@
1From 47b3b6e6fffed7080a2f1ce7673207ea44823ef7 Mon Sep 17 00:00:00 2001
2From: William Roberts <william.c.roberts@intel.com>
3Date: Fri, 21 May 2021 12:22:31 -0500
4Subject: [PATCH] tpm2_import: fix fixed AES key CVE-2021-3565
5
6tpm2_import used a fixed AES key for the inner wrapper, which means that
7a MITM attack would be able to unwrap the imported key. Even the
8use of an encrypted session will not prevent this. The TPM only
9encrypts the first parameter which is the fixed symmetric key.
10
11To fix this, ensure the key size is 16 bytes or bigger and use
12OpenSSL to generate a secure random AES key.
13
14Fixes: #2738
15
16Signed-off-by: William Roberts <william.c.roberts@intel.com>
17
18Upstream-Status: Backport
19[https://github.com/tpm2-software/tpm2-tools/commit/c069e4f179d5e6653a84fb236816c375dca82515]
20
21CVE: CVE-2021-3565
22
23Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
24---
25 tools/tpm2_import.c | 12 +++++++++++-
26 1 file changed, 11 insertions(+), 1 deletion(-)
27
28diff --git a/tools/tpm2_import.c b/tools/tpm2_import.c
29index 50072894..ee5dec15 100644
30--- a/tools/tpm2_import.c
31+++ b/tools/tpm2_import.c
32@@ -118,7 +118,17 @@ static tool_rc key_import(ESYS_CONTEXT *ectx, TPM2B_PUBLIC *parent_pub,
33 TPM2B_DATA enc_sensitive_key = {
34 .size = parent_pub->publicArea.parameters.rsaDetail.symmetric.keyBits.sym / 8
35 };
36- memset(enc_sensitive_key.buffer, 0xFF, enc_sensitive_key.size);
37+
38+ if(enc_sensitive_key.size < 16) {
39+ LOG_ERR("Calculated wrapping keysize is less than 16 bytes, got: %u", enc_sensitive_key.size);
40+ return tool_rc_general_error;
41+ }
42+
43+ int ossl_rc = RAND_bytes(enc_sensitive_key.buffer, enc_sensitive_key.size);
44+ if (ossl_rc != 1) {
45+ LOG_ERR("RAND_bytes failed: %s", ERR_error_string(ERR_get_error(), NULL));
46+ return tool_rc_general_error;
47+ }
48
49 /*
50 * Calculate the object name.
51--
522.25.1
53
diff --git a/meta-tpm2/recipes-tpm/tpm2-tools/tpm2-tools_4.1.3.bb b/meta-tpm2/recipes-tpm/tpm2-tools/tpm2-tools_4.3.2.bb
index 496f494..00e944a 100644
--- a/meta-tpm2/recipes-tpm/tpm2-tools/tpm2-tools_4.1.3.bb
+++ b/meta-tpm2/recipes-tpm/tpm2-tools/tpm2-tools_4.3.2.bb
@@ -1,18 +1,17 @@
1SUMMARY = "Tools for TPM2." 1SUMMARY = "Tools for TPM2."
2DESCRIPTION = "tpm2-tools" 2DESCRIPTION = "tpm2-tools"
3LICENSE = "BSD-3-Clause" 3LICENSE = "BSD-3-Clause"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=0eb1216e46938bd723098d93a23c3bcc" 4LIC_FILES_CHKSUM = "file://doc/LICENSE;md5=a846608d090aa64494c45fc147cc12e3"
5SECTION = "tpm" 5SECTION = "tpm"
6 6
7DEPENDS = "tpm2-abrmd tpm2-tss openssl curl autoconf-archive" 7DEPENDS = "tpm2-abrmd tpm2-tss openssl curl autoconf-archive"
8 8
9SRC_URI = "https://github.com/tpm2-software/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.gz \ 9SRC_URI = "https://github.com/tpm2-software/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.gz \
10 file://0001-tests-switch-to-python3.patch \ 10 file://0001-tests-switch-to-python3.patch \
11 file://CVE-2021-3565.patch \
12 file://0001-build-only-use-Werror-for-non-release-builds.patch \ 11 file://0001-build-only-use-Werror-for-non-release-builds.patch \
13 " 12 "
14 13
15SRC_URI[md5sum] = "48e0f58232b6a86fe4d007acf12af283" 14SRC_URI[md5sum] = "1d06d8940db8d055daf840716872ee89"
16SRC_URI[sha256sum] = "bb5d3310620e75468fe33dbd530bd73dd648c70ec707b4579c74d9f63fc82704" 15SRC_URI[sha256sum] = "e2802d4093a24b2c65b1f913d0f4c68eadde9b8fd8a9b7a3b17a6e50765e8350"
17 16
18inherit autotools pkgconfig bash-completion 17inherit autotools pkgconfig bash-completion