diff options
author | brnrd <brnrd@FreeBSD.org> | 2017-01-11 11:42:37 +0000 |
---|---|---|
committer | brnrd <brnrd@FreeBSD.org> | 2017-01-11 11:42:37 +0000 |
commit | 8121eb5d0f377807998bfbf7f676740fe7699e26 (patch) | |
tree | 8685bbd9a351ff9cebe550580dd4ea69246f70c0 | |
parent | 0524288ff6736b883fb6fe3b815571de5ccdd70b (diff) | |
download | FreeBSD-ports-8121eb5d0f377807998bfbf7f676740fe7699e26.zip FreeBSD-ports-8121eb5d0f377807998bfbf7f676740fe7699e26.tar.gz |
security/libressl: Fix ECDSA P-256 timing attack vuln
- Add patch from OpenBSD
MFH: 2017Q1
Security: 7caebe30-d7f1-11e6-a9a5-b499baebfeaf
Security: CVE-2016-7056
-rw-r--r-- | security/libressl/Makefile | 1 | ||||
-rw-r--r-- | security/libressl/files/patch-CVE-2016-7056 | 35 |
2 files changed, 36 insertions, 0 deletions
diff --git a/security/libressl/Makefile b/security/libressl/Makefile index 02ce5fe..f2f6980 100644 --- a/security/libressl/Makefile +++ b/security/libressl/Makefile @@ -3,6 +3,7 @@ PORTNAME= libressl PORTVERSION= 2.4.4 +PORTREVISION= 1 CATEGORIES= security devel MASTER_SITES= OPENBSD/LibreSSL diff --git a/security/libressl/files/patch-CVE-2016-7056 b/security/libressl/files/patch-CVE-2016-7056 new file mode 100644 index 0000000..e190eee --- /dev/null +++ b/security/libressl/files/patch-CVE-2016-7056 @@ -0,0 +1,35 @@ +untrusted comment: signature from openbsd 6.0 base secret key +RWSho3oKSqgLQ55BCxFoKK3pckJBYNZ3l6vujvan4SYLtXvRIsH6PNnmu7Xu18ILyYPxIQnYmCf1ux+IeoD8vzKfEeoCb+UVdQg= + +OpenBSD 6.0 errata 16, Jan 5, 2017: + +Avoid possible side-channel leak of ECDSA private keys when signing. + +Apply by doing: + signify -Vep /etc/signify/openbsd-60-base.pub -x 016_libcrypto.patch.sig \ + -m - | (cd /usr/src && patch -p0) + +And then rebuild and install libcrypto: + cd /usr/src/lib/libcrypto + make obj + make depend + make + make install + +Index: lib/libssl/src/crypto/ecdsa/ecs_ossl.c +=================================================================== +RCS file: /cvs/src/lib/libssl/src/crypto/ecdsa/Attic/ecs_ossl.c,v +retrieving revision 1.6 +retrieving revision 1.6.8.1 +diff -u -p -r1.6 -r1.6.8.1 +--- crypto/ecdsa/ecs_ossl.c 8 Feb 2015 13:35:07 -0000 1.6 ++++ crypto/ecdsa/ecs_ossl.c 5 Jan 2017 13:28:48 -0000 1.6.8.1 +@@ -141,6 +141,8 @@ ecdsa_sign_setup(EC_KEY *eckey, BN_CTX * + if (BN_num_bits(k) <= BN_num_bits(order)) + if (!BN_add(k, k, order)) + goto err; ++ ++ BN_set_flags(k, BN_FLG_CONSTTIME); + + /* compute r the x-coordinate of generator * k */ + if (!EC_POINT_mul(group, tmp_point, k, NULL, NULL, ctx)) { |