pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/security/openssl
Module Name: pkgsrc
Committed By: jperkin
Date: Tue Feb 7 16:34:42 UTC 2023
Modified Files:
pkgsrc/security/openssl: Makefile builtin.mk distinfo
Log Message:
openssl: Update to 1.1.1t.
Changes between 1.1.1s and 1.1.1t [7 Feb 2023]
*) Fixed X.400 address type confusion in X.509 GeneralName.
There is a type confusion vulnerability relating to X.400 address processing
inside an X.509 GeneralName. X.400 addresses were parsed as an ASN1_STRING
but subsequently interpreted by GENERAL_NAME_cmp as an ASN1_TYPE. This
vulnerability may allow an attacker who can provide a certificate chain and
CRL (neither of which need have a valid signature) to pass arbitrary
pointers to a memcmp call, creating a possible read primitive, subject to
some constraints. Refer to the advisory for more information. Thanks to
David Benjamin for discovering this issue. (CVE-2023-0286)
This issue has been fixed by changing the public header file definition of
GENERAL_NAME so that x400Address reflects the implementation. It was not
possible for any existing application to successfully use the existing
definition; however, if any application references the x400Address field
(e.g. in dead code), note that the type of this field has changed. There is
no ABI change.
[Hugo Landau]
*) Fixed Use-after-free following BIO_new_NDEF.
The public API function BIO_new_NDEF is a helper function used for
streaming ASN.1 data via a BIO. It is primarily used internally to OpenSSL
to support the SMIME, CMS and PKCS7 streaming capabilities, but may also
be called directly by end user applications.
The function receives a BIO from the caller, prepends a new BIO_f_asn1
filter BIO onto the front of it to form a BIO chain, and then returns
the new head of the BIO chain to the caller. Under certain conditions,
for example if a CMS recipient public key is invalid, the new filter BIO
is freed and the function returns a NULL result indicating a failure.
However, in this case, the BIO chain is not properly cleaned up and the
BIO passed by the caller still retains internal pointers to the previously
freed filter BIO. If the caller then goes on to call BIO_pop() on the BIO
then a use-after-free will occur. This will most likely result in a crash.
(CVE-2023-0215)
[Viktor Dukhovni, Matt Caswell]
*) Fixed Double free after calling PEM_read_bio_ex.
The function PEM_read_bio_ex() reads a PEM file from a BIO and parses and
decodes the "name" (e.g. "CERTIFICATE"), any header data and the payload
data. If the function succeeds then the "name_out", "header" and "data"
arguments are populated with pointers to buffers containing the relevant
decoded data. The caller is responsible for freeing those buffers. It is
possible to construct a PEM file that results in 0 bytes of payload data.
In this case PEM_read_bio_ex() will return a failure code but will populate
the header argument with a pointer to a buffer that has already been freed.
If the caller also frees this buffer then a double free will occur. This
will most likely lead to a crash.
The functions PEM_read_bio() and PEM_read() are simple wrappers around
PEM_read_bio_ex() and therefore these functions are also directly affected.
These functions are also called indirectly by a number of other OpenSSL
functions including PEM_X509_INFO_read_bio_ex() and
SSL_CTX_use_serverinfo_file() which are also vulnerable. Some OpenSSL
internal uses of these functions are not vulnerable because the caller does
not free the header argument if PEM_read_bio_ex() returns a failure code.
(CVE-2022-4450)
[Kurt Roeckx, Matt Caswell]
*) Fixed Timing Oracle in RSA Decryption.
A timing based side channel exists in the OpenSSL RSA Decryption
implementation which could be sufficient to recover a plaintext across
a network in a Bleichenbacher style attack. To achieve a successful
decryption an attacker would have to be able to send a very large number
of trial messages for decryption. The vulnerability affects all RSA padding
modes: PKCS#1 v1.5, RSA-OEAP and RSASVE.
(CVE-2022-4304)
[Dmitry Belyavsky, Hubert Kario]
To generate a diff of this commit:
cvs rdiff -u -r1.286 -r1.287 pkgsrc/security/openssl/Makefile
cvs rdiff -u -r1.50 -r1.51 pkgsrc/security/openssl/builtin.mk
cvs rdiff -u -r1.164 -r1.165 pkgsrc/security/openssl/distinfo
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/security/openssl/Makefile
diff -u pkgsrc/security/openssl/Makefile:1.286 pkgsrc/security/openssl/Makefile:1.287
--- pkgsrc/security/openssl/Makefile:1.286 Sat Nov 5 18:42:00 2022
+++ pkgsrc/security/openssl/Makefile Tue Feb 7 16:34:42 2023
@@ -1,9 +1,9 @@
-# $NetBSD: Makefile,v 1.286 2022/11/05 18:42:00 wiz Exp $
+# $NetBSD: Makefile,v 1.287 2023/02/07 16:34:42 jperkin Exp $
# Remember to upload-distfiles when updating OpenSSL -- otherwise it
# is not possible for users who have bootstrapped without OpenSSL
# to install it and enable HTTPS fetching.
-DISTNAME= openssl-1.1.1s
+DISTNAME= openssl-1.1.1t
CATEGORIES= security
MASTER_SITES= https://www.openssl.org/source/
Index: pkgsrc/security/openssl/builtin.mk
diff -u pkgsrc/security/openssl/builtin.mk:1.50 pkgsrc/security/openssl/builtin.mk:1.51
--- pkgsrc/security/openssl/builtin.mk:1.50 Thu Jan 12 11:01:41 2023
+++ pkgsrc/security/openssl/builtin.mk Tue Feb 7 16:34:42 2023
@@ -1,4 +1,4 @@
-# $NetBSD: builtin.mk,v 1.50 2023/01/12 11:01:41 markd Exp $
+# $NetBSD: builtin.mk,v 1.51 2023/02/07 16:34:42 jperkin Exp $
BUILTIN_PKG:= openssl
@@ -26,7 +26,7 @@ MAKEVARS+= IS_BUILTIN.openssl
### a package name to represent the built-in package.
###
.if !defined(BUILTIN_PKG.openssl) && \
- ${IS_BUILTIN.openssl:M[yY][eE][sS]} && \
+ ${IS_BUILTIN.openssl:tl} == yes && \
empty(H_OPENSSLV:M__nonexistent__)
BUILTIN_VERSION.openssl!= \
${AWK} 'BEGIN { hex="0123456789abcdef"; \
@@ -65,7 +65,7 @@ MAKEVARS+= BUILTIN_PKG.openssl
MAKEVARS+= BUILTIN_VERSION.openssl
.if !defined(BUILTIN_OPENSSL_HAS_THREADS) && \
- ${IS_BUILTIN.openssl:M[yY][eE][sS]} && \
+ ${IS_BUILTIN.openssl:tl} == yes && \
empty(H_OPENSSLCONF:M__nonexistent__)
BUILTIN_OPENSSL_HAS_THREADS!= \
${AWK} 'BEGIN { ans = "no" } \
@@ -86,15 +86,15 @@ USE_BUILTIN.openssl= no
. else
USE_BUILTIN.openssl= ${IS_BUILTIN.openssl}
. if defined(BUILTIN_PKG.openssl) && \
- ${IS_BUILTIN.openssl:M[yY][eE][sS]}
+ ${IS_BUILTIN.openssl:tl} == yes
USE_BUILTIN.openssl= yes
### take care builtin check case, BUILDLINK_API_DEPENDS may not be defined yet.
CHECK_BUILTIN.openssl?= no
-. if ${CHECK_BUILTIN.openssl:M[yY][eE][sS]}
+. if ${CHECK_BUILTIN.openssl:tl} == yes
BUILDLINK_API_DEPENDS.openssl?= openssl>=1.1.1
. endif
. for dep_ in ${BUILDLINK_API_DEPENDS.openssl}
-. if ${USE_BUILTIN.openssl:M[yY][eE][sS]}
+. if ${USE_BUILTIN.openssl:tl} == yes
USE_BUILTIN.openssl!= \
if ${PKG_ADMIN} pmatch ${dep_:Q} ${BUILTIN_PKG.openssl:Q}; then \
${ECHO} yes; \
@@ -104,7 +104,7 @@ USE_BUILTIN.openssl!= \
. endif
. endfor
. endif
-. if ${IS_BUILTIN.openssl:M[yY][eE][sS]} && \
+. if ${IS_BUILTIN.openssl:tl} == yes && \
defined(USE_FEATURES.openssl)
. if !empty(USE_FEATURES.openssl:Mthreads) && \
!empty(BUILTIN_OPENSSL_HAS_THREADS:M[nN][oO])
@@ -120,9 +120,9 @@ MAKEVARS+= USE_BUILTIN.openssl
### solely to determine whether a built-in implementation exists.
###
CHECK_BUILTIN.openssl?= no
-.if ${CHECK_BUILTIN.openssl:M[nN][oO]}
+.if ${CHECK_BUILTIN.openssl:tl} == no
-. if ${USE_BUILTIN.openssl:M[yY][eE][sS]}
+. if ${USE_BUILTIN.openssl:tl} == yes
. if empty(H_OPENSSLV:M__nonexistent__)
. if !empty(H_OPENSSLV:M/usr/sfw/*)
BUILDLINK_PREFIX.openssl= /usr/sfw
@@ -139,7 +139,7 @@ BUILDLINK_PREFIX.openssl= /boot/common
. if defined(PKG_SYSCONFDIR.openssl)
SSLDIR= ${PKG_SYSCONFDIR.openssl}
-. elif ${USE_BUILTIN.openssl:M[yY][eE][sS]}
+. elif ${USE_BUILTIN.openssl:tl} == yes
. if ${OPSYS} == "NetBSD"
SSLDIR= /etc/openssl
. elif ${OPSYS} == "Linux"
@@ -178,7 +178,7 @@ BUILD_DEFS+= SSLDIR SSLCERTS SSLCERTBUND
# create pc files for builtin version; other versions assumed to contain them
# If we are using the builtin version, check whether it has a *.pc
# files or not. If the latter, generate fake ones.
-. if ${USE_BUILTIN.openssl:M[Yy][Ee][Ss]}
+. if ${USE_BUILTIN.openssl:tl} == yes
BUILDLINK_TARGETS+= openssl-fake-pc
. if !defined(HAS_OPENSSL_FAKE_PC)
Index: pkgsrc/security/openssl/distinfo
diff -u pkgsrc/security/openssl/distinfo:1.164 pkgsrc/security/openssl/distinfo:1.165
--- pkgsrc/security/openssl/distinfo:1.164 Sat Nov 5 18:42:00 2022
+++ pkgsrc/security/openssl/distinfo Tue Feb 7 16:34:42 2023
@@ -1,8 +1,8 @@
-$NetBSD: distinfo,v 1.164 2022/11/05 18:42:00 wiz Exp $
+$NetBSD: distinfo,v 1.165 2023/02/07 16:34:42 jperkin Exp $
-BLAKE2s (openssl-1.1.1s.tar.gz) = 745dcf07ed1abea12b4c7aa5cc9cb9edb724c4f1117499b87f251ac01f0ffada
-SHA512 (openssl-1.1.1s.tar.gz) = 2ef983f166b5e1bf456ca37938e7e39d58d4cd85e9fc4b5174a05f5c37cc5ad89c3a9af97a6919bcaab128a8a92e4bdc8a045e5d9156d90768da8f73ac67c5b9
-Size (openssl-1.1.1s.tar.gz) = 9868981 bytes
+BLAKE2s (openssl-1.1.1t.tar.gz) = ef41c557d0e29387b2e6e41349054c1f45e0ab6a208070450c42bc0491ec7b2e
+SHA512 (openssl-1.1.1t.tar.gz) = 628676c9c3bc1cf46083d64f61943079f97f0eefd0264042e40a85dbbd988f271bfe01cd1135d22cc3f67a298f1d078041f8f2e97b0da0d93fe172da573da18c
+Size (openssl-1.1.1t.tar.gz) = 9881866 bytes
SHA1 (patch-Configurations_shared-info.pl) = 0e835f6e343b5d05ef9a0e6ef2a195201262d15c
SHA1 (patch-Configurations_unix-Makefile.tmpl) = 3f47dd453381485aeb6c37dc53f932428fdcef50
SHA1 (patch-Configure) = 479f1bc826f7721f6b44d6b5a6cf460432924bf2
Home |
Main Index |
Thread Index |
Old Index