Resolves: RHEL-213033 Resolves: RHEL-213041 Resolves: RHEL-213047 Resolves: RHEL-213081 Resolves: RHEL-213114 Resolves: RHEL-213119 Resolves: RHEL-213151
70 lines
2.2 KiB
Diff
70 lines
2.2 KiB
Diff
From ee32a1916a5d5545d4ac470646c0e023a152a406 Mon Sep 17 00:00:00 2001
|
|
From: Jakub Jelen <jjelen@redhat.com>
|
|
Date: Fri, 15 May 2026 17:01:21 +0200
|
|
Subject: [PATCH 08/12] CVE-2026-59847 libcrypto: Fix tag verification of
|
|
AES-GCM ciphers
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
EVP_DecryptFinal() returns 0 errors, which was wrongly checked since
|
|
its introduction.
|
|
|
|
Reported by Ben Smyth discuss@bensmyth.com
|
|
|
|
Signed-off-by: Jakub Jelen <jjelen@redhat.com>
|
|
Reviewed-by: Pavol Žáčik <pzacik@redhat.com>
|
|
(cherry picked from commit 6d6cb6cb4d1684bb3f2b9fd23f3635e79d1e5495)
|
|
---
|
|
src/libcrypto.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/src/libcrypto.c b/src/libcrypto.c
|
|
index 658bbcd0..4353d006 100644
|
|
--- a/src/libcrypto.c
|
|
+++ b/src/libcrypto.c
|
|
@@ -680,7 +680,7 @@ evp_cipher_aead_decrypt(struct ssh_cipher_struct *cipher,
|
|
rc = EVP_DecryptFinal(cipher->ctx,
|
|
NULL,
|
|
&outlen);
|
|
- if (rc < 0) {
|
|
+ if (rc != 1 || outlen != 0) {
|
|
SSH_LOG(SSH_LOG_TRACE, "EVP_DecryptFinal failed: Failed authentication");
|
|
return SSH_ERROR;
|
|
}
|
|
--
|
|
2.54.0
|
|
|
|
From a7f55e18f9f7cb5ba3f71d8701168aea9d5a670f Mon Sep 17 00:00:00 2001
|
|
From: Jakub Jelen <jjelen@redhat.com>
|
|
Date: Mon, 18 May 2026 08:56:31 +0200
|
|
Subject: [PATCH 09/12] CVE-2026-59847 libcrypto: Fix symmetric issue during
|
|
encryption
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
Signed-off-by: Jakub Jelen <jjelen@redhat.com>
|
|
Reviewed-by: Pavol Žáčik <pzacik@redhat.com>
|
|
(cherry picked from commit a5173c6ad249f7960bc7c1cc75a6a05ead8e3eba)
|
|
---
|
|
src/libcrypto.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/src/libcrypto.c b/src/libcrypto.c
|
|
index 4353d006..2f11caca 100644
|
|
--- a/src/libcrypto.c
|
|
+++ b/src/libcrypto.c
|
|
@@ -592,7 +592,7 @@ evp_cipher_aead_encrypt(struct ssh_cipher_struct *cipher,
|
|
rc = EVP_EncryptFinal(cipher->ctx,
|
|
NULL,
|
|
&tmplen);
|
|
- if (rc < 0) {
|
|
+ if (rc != 1) {
|
|
SSH_LOG(SSH_LOG_TRACE, "EVP_EncryptFinal failed: Failed to create a tag");
|
|
return;
|
|
}
|
|
--
|
|
2.54.0
|
|
|