Cloudanix VulnDB

CVE-2025-0838

None

CVSS

—

EPSS

0.6%

Published

Feb 21, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A problem in a common C++ library could let attackers damage memory inside programs that rely on it, potentially causing crashes or security issues until the software is updated.

Exploitation
Remote Authenticated
Attacker needs
Low Privilege
Complexity
Moderate
Impact
Data Tampering
Component
Library
Class
Buffer Overflow
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Heap buffer overflow in Abseil-cpp caused by missing upper bounds on size arguments to sized constructors, reserve(), and rehash() of absl::{flat,node}hash{set,map}, resulting in integer overflow during backing store allocation and subsequent out-of-bounds writes and accesses.

Why it matters to the business

Applications depending on vulnerable Abseil versions face risk of memory corruption that can lead to crashes, denial of service, or potential code execution, affecting availability and security of services using the library.

How an attack unfolds

An attacker identifies code paths invoking affected hash container methods with attacker-controlled size values, passes an oversized argument to trigger integer overflow and out-of-bounds memory write, then leverages the resulting corruption for further attacks such as arbitrary code execution.

How to fix it

Upgrade abseil/abseil-cpp to commit 5a0e2cb5e3958dd90bb8569a2766622cb74d90c1 or later. For Apache Bitnami deployments, upgrade to version 2.4.52 or higher.

How to confirm the fix worked

Confirm the installed Abseil commit or package version matches or exceeds the fixed release; inspect source or build manifests for the updated hash containers implementation.

Typical attack path

  1. Locate application or service using vulnerable Abseil hash containers
  2. Supply large size value to sized constructor, reserve, or rehash
  3. Trigger integer overflow and out-of-bounds write during buffer handling
  4. Exploit memory corruption for code execution or denial of service

How to detect it

Monitor application logs and crash reports for memory corruption indicators following operations on hash containers; search for evidence of unusually large size arguments processed by affected methods.

What your security team should do

  • Update Abseil dependency to the fixed commit across all affected products
  • Review code using sized operations on hash sets and maps for untrusted size inputs
  • Test applications after upgrade for stability and absence of memory issues

The record

There exists a heap buffer overflow vulnerable in Abseil-cpp. The sized constructors, reserve(), and rehash() methods of absl::{flat,node}hash{set,map} did not impose an upper bound on their size argument. As a result, it was possible for a caller to pass a very large size that would cause an integer overflow when computing the size of the container's backing store, and a subsequent out-of-bounds memory write. Subsequent accesses to the container might also access out-of-bounds memory. We recommend upgrading past commit 5a0e2cb5e3958dd90bb8569a2766622cb74d90c1

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 abseil 0 No fix
Debian:11 abseil 0 0~20200923.3-2+deb11u1
Debian:12 abseil 0 No fix
Debian:13 abseil 0 No fix
SUSE:Linux Enterprise Module for Basesystem 15 SP7 abseil-cpp 0 20240116.3-150600.19.6.1
openSUSE:Leap 15.6 abseil-cpp 0 20240116.3-150600.19.6.1
openSUSE:Tumbleweed abseil-cpp 0 20250814.0-2.1