Cloudanix VulnDB

CVE-2025-4877

Medium · 4.5

CVSS

4.5

EPSS

0.2%

Published

Aug 20, 2025

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A library used for secure network connections can be tricked into corrupting its own memory on 32-bit systems, which might let someone already on the machine cause crashes or limited problems.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
High
Impact
Data Tampering
Component
Library
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Integer overflow in bin_to_base64() triggered by unexpectedly large input to ssh_get_fingerprint_hash() on 32-bit builds, resulting in under-allocation followed by out-of-bounds write and heap corruption.

Why it matters to the business

Applications relying on affected 32-bit builds face risk of memory corruption that can cause crashes or limited local code execution, increasing operational disruption and patching urgency for downstream packages.

How an attack unfolds

An attacker with local access supplies a crafted large buffer to ssh_get_fingerprint_hash() in a 32-bit application using the vulnerable libssh code path, triggering the overflow and subsequent heap write.

How to fix it

Upgrade affected Chainguard packages to the listed fixed versions (openjdk-11-openj9 and related packages to 0.53.0-r0) and rebuild or redeploy any 32-bit images that embed the vulnerable libssh code.

How to confirm the fix worked

Verify package versions match the fixed releases, confirm 32-bit builds are no longer present or are updated, and run regression tests exercising ssh_get_fingerprint_hash() with large inputs.

Typical attack path

  1. Locate 32-bit process or application that calls ssh_get_fingerprint_hash() with attacker-controlled input
  2. Supply an oversized buffer to induce integer overflow in bin_to_base64()
  3. Trigger out-of-bounds write to corrupt heap metadata
  4. Leverage corruption for limited code execution or denial of service

How to detect it

Review process execution logs and library load events on 32-bit systems for calls involving fingerprint hashing; look for unexpected crashes or heap-related faults in applications that depend on the vulnerable packages.

What your security team should do

  • Prioritize patching 32-bit deployments within standard change windows given the local attack vector
  • Scan container and package inventories for the listed Chainguard openjdk-11-openj9 variants
  • Remove or replace any remaining 32-bit libssh consumers where feasible

The record

There's a vulnerability in the libssh package where when a libssh consumer passes in an unexpectedly large input buffer to ssh_get_fingerprint_hash() function. In such cases the bin_to_base64() function can experience an integer overflow leading to a memory under allocation, when that happens it's possible that the program perform out of bounds write leading to a heap corruption. This issue affects only 32-bits builds of libssh.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 libssh 0 No fix
Debian:12 libssh 0 No fix
Debian:13 libssh 0 0.11.2-1
Debian:14 libssh 0 0.11.2-1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 libssh 0 0.9.8-150600.11.3.1
SUSE:Linux Enterprise Module for Basesystem 15 SP7 libssh 0 0.9.8-150600.11.3.1
SUSE:Linux Enterprise Server 12 SP5-LTSS libssh 0 0.6.3-12.15.1
SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5 libssh 0 0.6.3-12.15.1
openSUSE:Leap 15.6 libssh 0 0.9.8-150600.11.3.1
openSUSE:Tumbleweed libssh 0 0.11.2-1.1

Related vulnerabilities