Cloudanix VulnDB

CVE-2024-0553

High · 7.5

CVSS

7.5

EPSS

1.6%

Published

Jan 16, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in a widely used encryption library can let attackers steal secret keys by carefully timing how the software responds, potentially exposing private communications.

Exploit Available
Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Data Exposure
Component
Library
Class
Cryptographic Weakness
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Differing response times to malformed RSA-PSK ClientKeyExchange ciphertexts versus correctly padded PKCS#1 v1.5 messages enable a remote timing side-channel that can leak sensitive key material; this is an incomplete fix for the prior related weakness.

Why it matters to the business

Organizations relying on GnuTLS for TLS connections face risk of cryptographic key exposure, which can lead to decryption of past or future sessions and loss of confidentiality for protected data.

How an attack unfolds

An attacker repeatedly sends specially crafted RSA-PSK ClientKeyExchange messages containing malformed padding, measures the server's response-time variations, and uses statistical analysis to recover the pre-master secret and derive session keys.

How to fix it

Upgrade GnuTLS to the commit 2f04c14daa086889b4e85f7056c39d23766ddaa1 or later; rebuild and redeploy all dependent applications; disable RSA-PSK cipher suites until the update is applied if feasible.

How to confirm the fix worked

Confirm the installed GnuTLS library reports a version containing commit 2f04c14daa086889b4e85f7056c39d23766ddaa1; run the project's timing-attack regression tests and verify constant-time behavior under load.

Typical attack path

  1. Locate services using GnuTLS that negotiate RSA-PSK cipher suites
  2. Establish multiple TLS handshakes with crafted ClientKeyExchange payloads
  3. Record high-resolution timing measurements of server responses
  4. Apply statistical techniques to distinguish correct versus incorrect padding
  5. Recover pre-master secret and decrypt recorded traffic

How to detect it

Review TLS handshake logs for unusually high volumes of RSA-PSK ClientKeyExchange messages from single sources; correlate with application performance metrics showing variable response latency during key exchange; no definitive post-exploitation artifacts are typically present.

What your security team should do

  • Immediately inventory all systems using GnuTLS and schedule patching to the fixed commit
  • Prioritize update of internet-facing services that accept RSA-PSK
  • Temporarily disable RSA-PSK cipher suites where operationally acceptable
  • Monitor upstream GnuTLS releases for any follow-on corrections

The record

A vulnerability was found in GnuTLS. The response times to malformed ciphertexts in RSA-PSK ClientKeyExchange differ from the response times of ciphertexts with correct PKCS#1 v1.5 padding. This issue may allow a remote attacker to perform a timing side-channel attack in the RSA-PSK key exchange, potentially leading to the leakage of sensitive data. CVE-2024-0553 is designated as an incomplete resolution for CVE-2023-5981.

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:8 gnutls 0 3.6.16-8.el8_9.1
AlmaLinux:8 gnutls-c++ 0 3.6.16-8.el8_9.1
AlmaLinux:8 gnutls-dane 0 3.6.16-8.el8_9.1
AlmaLinux:8 gnutls-devel 0 3.6.16-8.el8_9.1
AlmaLinux:8 gnutls-utils 0 3.6.16-8.el8_9.1
AlmaLinux:9 gnutls 0 3.7.6-23.el9_3.3
AlmaLinux:9 gnutls-c++ 0 3.7.6-23.el9_3.3
AlmaLinux:9 gnutls-dane 0 3.7.6-23.el9_3.3
AlmaLinux:9 gnutls-devel 0 3.7.6-23.el9_3.3
AlmaLinux:9 gnutls-utils 0 3.7.6-23.el9_3.3
Alpine:v3.18 gnutls 0 3.8.3-r0
Alpine:v3.19 gnutls 0 3.8.3-r0
Alpine:v3.20 gnutls 0 3.8.3-r0
Alpine:v3.21 gnutls 0 3.8.3-r0
Alpine:v3.22 gnutls 0 3.8.3-r0
Debian:10 gnutls28 0 3.6.7-4+deb10u12
Debian:11 gnutls28 0 3.7.1-5+deb11u5
Debian:12 gnutls28 0 3.7.9-2+deb12u2
Debian:13 gnutls28 0 3.8.3-1
Mageia:9 gnutls 0 3.8.0-2.2.mga9
Red Hat:enterprise_linux:8::appstream gnutls 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-c++ 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-c++-debuginfo 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-dane 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-dane-debuginfo 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-debuginfo 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-debugsource 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-devel 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-utils 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::appstream gnutls-utils-debuginfo 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-c++ 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-c++-debuginfo 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-dane 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-dane-debuginfo 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-debuginfo 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-debugsource 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-devel 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-utils 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:8::baseos gnutls-utils-debuginfo 0 0:3.6.16-8.el8_9.1
Red Hat:enterprise_linux:9::appstream gnutls 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-c++ 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-c++-debuginfo 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-dane 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-dane-debuginfo 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-debuginfo 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-debugsource 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-devel 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-utils 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::appstream gnutls-utils-debuginfo 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-c++ 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-c++-debuginfo 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-dane 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-dane-debuginfo 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-debuginfo 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-debugsource 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-devel 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-utils 0 0:3.7.6-23.el9_3.3
Red Hat:enterprise_linux:9::baseos gnutls-utils-debuginfo 0 0:3.7.6-23.el9_3.3
Red Hat:rhel_eus:8.6::appstream gnutls 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-c++ 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-c++-debuginfo 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-dane 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-dane-debuginfo 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-debuginfo 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-debugsource 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-devel 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-utils 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::appstream gnutls-utils-debuginfo 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-c++ 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-c++-debuginfo 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-dane 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-dane-debuginfo 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-debuginfo 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-debugsource 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-devel 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-utils 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.6::baseos gnutls-utils-debuginfo 0 0:3.6.16-5.el8_6.3
Red Hat:rhel_eus:8.8::appstream gnutls 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-c++ 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-c++-debuginfo 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-dane 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-dane-debuginfo 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-debuginfo 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-debugsource 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-devel 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-utils 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::appstream gnutls-utils-debuginfo 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-c++ 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-c++-debuginfo 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-dane 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-dane-debuginfo 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-debuginfo 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-debugsource 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-devel 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-utils 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:8.8::baseos gnutls-utils-debuginfo 0 0:3.6.16-7.el8_8.2
Red Hat:rhel_eus:9.2::appstream gnutls 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-c++ 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-c++-debuginfo 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-dane 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-dane-debuginfo 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-debuginfo 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-debugsource 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-devel 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-utils 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::appstream gnutls-utils-debuginfo 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-c++ 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-c++-debuginfo 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-dane 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-dane-debuginfo 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-debuginfo 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-debugsource 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-devel 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-utils 0 0:3.7.6-21.el9_2.2
Red Hat:rhel_eus:9.2::baseos gnutls-utils-debuginfo 0 0:3.7.6-21.el9_2.2
Rocky Linux:8 gnutls 0 0:3.6.16-8.el8_9.1
SUSE:Enterprise Storage 7.1 gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS gnutls 0 3.7.3-150400.4.41.3
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS gnutls 0 3.7.3-150400.4.41.3
SUSE:Linux Enterprise Micro 5.1 gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise Micro 5.2 gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise Micro 5.3 gnutls 0 3.7.3-150400.1.3.1
SUSE:Linux Enterprise Micro 5.4 gnutls 0 3.7.3-150400.4.41.3
SUSE:Linux Enterprise Micro 5.5 gnutls 0 3.7.3-150400.4.41.3
SUSE:Linux Enterprise Module for Basesystem 15 SP5 gnutls 0 3.7.3-150400.4.41.3
SUSE:Linux Enterprise Server 15 SP2-LTSS gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise Server 15 SP3-LTSS gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise Server 15 SP4-LTSS gnutls 0 3.7.3-150400.4.41.3
SUSE:Linux Enterprise Server for SAP Applications 15 SP2 gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP3 gnutls 0 3.6.7-150200.14.31.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 gnutls 0 3.7.3-150400.4.41.3
SUSE:Manager Proxy 4.3 gnutls 0 3.7.3-150400.4.41.3
SUSE:Manager Server 4.3 gnutls 0 3.7.3-150400.4.41.3
Ubuntu:20.04:LTS gnutls28 0 3.6.13-2ubuntu1.10
Ubuntu:22.04:LTS gnutls28 0 3.7.3-4ubuntu1.4
Ubuntu:23.10 gnutls28 0 3.8.1-4ubuntu1.2
Ubuntu:24.04:LTS gnutls28 0 3.8.3-1ubuntu1
Ubuntu:Pro:16.04:LTS gnutls28 0 No fix
Ubuntu:Pro:18.04:LTS gnutls28 0 No fix
Ubuntu:Pro:FIPS-updates:24.04:LTS gnutls28 0 No fix
openSUSE:Leap 15.5 gnutls 0 3.7.3-150400.4.41.3
openSUSE:Leap Micro 5.4 gnutls 0 3.7.3-150400.4.41.3
openSUSE:Tumbleweed gnutls 0 3.8.3-1.1

Related vulnerabilities