Cloudanix VulnDB

CVE-2024-50382

None

CVSS

—

EPSS

0.5%

Published

Oct 23, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in a security library can accidentally reveal secret information during encryption under specific conditions, potentially weakening data protection.

Exploitation
Other
Attacker needs
Local User
Complexity
High
Impact
Data Exposure
Component
Library
Class
Cryptographic Weakness
Remediation
Upgrade
Effort
Low
Patch risk
Low

What it actually does

Compiler optimization in specific LLVM versions introduces a conditional branch in GHASH computation for AES-GCM instead of constant-time XOR, creating secret-dependent control flow that may enable side-channel attacks.

Why it matters to the business

Potential compromise of encrypted communications confidentiality, requiring urgent updates to cryptographic libraries in affected environments, though low exploitability reduces immediate risk.

How an attack unfolds

An attacker with ability to observe execution timing or cache behavior on a RISC-V system compiled with Clang 15 could potentially extract authentication keys or plaintext from AES-GCM operations due to the non-constant-time implementation.

How to fix it

Upgrade Botan to the version containing commit 53b0cfde580e86b03d0d27a488b6c134f662e957 or later.

How to confirm the fix worked

Verify the commit hash in the source or check library version is at least 3.6.0 and rebuild with non-affected compilers.

Typical attack path

  1. Identify target using vulnerable Botan version compiled with affected LLVM
  2. Perform side-channel analysis on GHASH operations
  3. Recover cryptographic secrets

How to detect it

Monitor for unusual timing variations in cryptographic operations or review build logs for affected compiler and library combinations.

What your security team should do

  • Update to fixed Botan version immediately
  • Audit build environments for LLVM versions
  • Consider compiler flags for constant-time code

The record

Botan before 3.6.0, when certain LLVM versions are used, has compiler-induced secret-dependent control flow in lib/utils/ghash/ghash.cpp in GHASH in AES-GCM. There is a branch instead of an XOR with carry. This was observed for Clang in LLVM 15 on RISC-V.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 botan 0 No fix
Debian:12 botan 0 No fix
Debian:13 botan 0 No fix
Debian:14 botan 0 2.19.5+dfsg-3
SUSE:Package Hub 15 SP5 Botan 0 2.19.5-bp156.3.6.1
SUSE:Package Hub 15 SP6 Botan 0 2.19.5-bp156.3.6.1
Ubuntu:18.04:LTS botan 0 No fix
Ubuntu:20.04:LTS botan 0 No fix
Ubuntu:20.04:LTS oscar 0 No fix
Ubuntu:22.04:LTS botan 0 No fix
Ubuntu:22.04:LTS oscar 0 No fix
Ubuntu:24.04:LTS botan 0 No fix
Ubuntu:24.04:LTS oscar 0 No fix
Ubuntu:24.10 botan 0 No fix
Ubuntu:24.10 oscar 0 No fix
Ubuntu:25.04 oscar 0 No fix
Ubuntu:25.10 oscar 0 No fix
Ubuntu:Pro:18.04:LTS botan 0 No fix
Ubuntu:Pro:20.04:LTS botan 0 No fix
Ubuntu:Pro:20.04:LTS oscar 0 No fix
Ubuntu:Pro:22.04:LTS botan 0 2.19.1+dfsg-2ubuntu1+esm1
Ubuntu:Pro:24.04:LTS botan 0 2.19.3+dfsg-1ubuntu2+esm1
openSUSE:Leap 15.5 Botan 0 2.19.5-bp156.3.6.1
openSUSE:Leap 15.6 Botan 0 2.19.5-bp156.3.6.1
openSUSE:Tumbleweed Botan 0 3.6.0-1.1

Related vulnerabilities