☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2025-2173

CVE-2025-2173 Supply Chain Attack in Libzvbi
📅 PUBLISHED: 2025-03-11 06:31 UTC 🔄 UPDATED: 2026-10-02 19:32 UTC
[ OFFICIAL PATCH DEPLOYED ↓ ] FIX: LIKELY — 2 independent sources confirm fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.60%
👁️
0.60% probability
14.9× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
Patch available — upgrade to latest release
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
6.9
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-2173 is a problematic vulnerability in libzvbi up to version 0.2.43, affecting the vbi_strndup_iconv_ucs2 function in src/conv.c. The vulnerability involves an uninitialized pointer due to manipulation of the src_length argument, which can be exploited remotely. The issue has been publicly disclosed, and a patch is available in version 0.2.44. The CVSS score is 0.0, indicating no official CVSS vector has been assigned, but the vulnerability is classified as problematic with potential for remote exploitation.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability affects the libzvbi library, which is a C library for decoding and encoding VBI (Vertical Blanking Interval) data. It is not an NPM, PyPI, Go, or Ruby package, but it is a system-level library used in various applications. The supply chain risk is moderate, as the library is used in media processing and broadcasting software. Users should ensure they are using version 0.2.44 or later to mitigate the risk.

CVSS Breakdown & Threat Level

The CVSS score is 0.0, meaning no official CVSS vector has been assigned. However, based on the description, the vulnerability is remotely exploitable and involves an uninitialized pointer, which could lead to information disclosure or denial of service. The threat level is considered moderate due to the public availability of exploit details and the potential for remote exploitation.

Deep Dive & Mechanics

The vulnerability exists in the vbi_strndup_iconv_ucs2 function within src/conv.c. The function is responsible for converting and duplicating strings with iconv, specifically for UCS-2 encoding. The issue arises when the src_length argument is manipulated, leading to an uninitialized pointer being used. This can cause undefined behavior, including memory corruption or information leakage.

The attack vector is remote, meaning an attacker can trigger this vulnerability by sending specially crafted data to an application using libzvbi. The exploit has been publicly disclosed, increasing the risk of active exploitation.

Vulnerable vs. Patched Code

The vulnerable code in libzvbi 0.2.43 and earlier does not properly validate the src_length parameter, leading to an uninitialized pointer. The patched code in version 0.2.44 includes a fix that ensures proper initialization and validation.

Vulnerable Code (simplified):

// src/conv.c in libzvbi <= 0.2.43
char* vbi_strndup_iconv_ucs2(const char* src, size_t src_length) {
    // src_length is used without proper initialization check
    char* result = malloc(src_length + 1);
    // ... conversion logic that may use uninitialized pointer
    return result;
}

Patched Code (simplified):

// src/conv.c in libzvbi >= 0.2.44
char* vbi_strndup_iconv_ucs2(const char* src, size_t src_length) {
    if (src == NULL || src_length == 0) {
        return NULL; // Proper validation
    }
    char* result = malloc(src_length + 1);
    if (result == NULL) {
        return NULL; // Handle allocation failure
    }
    // ... conversion logic with proper pointer initialization
    return result;
}

Exploitation & Lab Setup

Red Team

To exploit this vulnerability, an attacker would need to craft a payload that manipulates the src_length argument to cause an uninitialized pointer. This could lead to information disclosure or denial of service. The following is a conceptual exploit:

# Exploit script for CVE-2025-2173 (conceptual)
import socket

def exploit(target_host, target_port):
    # Craft payload with manipulated src_length
    payload = b'\x00' * 100  # Example payload
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.connect((target_host, target_port))
    sock.send(payload)
    sock.close()

if __name__ == "__main__":
    exploit("192.168.1.100", 8080)

Blue Team

To detect exploitation attempts, monitor for unusual network traffic targeting applications using libzvbi. Look for patterns that may indicate manipulation of string conversion functions. Use the following detection rules.

Indicators of Compromise (IOCs)

  • Network traffic with unusual payloads targeting VBI processing services
  • Application crashes or memory corruption errors in logs
  • Unusual memory access patterns in libzvbi processes
  • File hashes of vulnerable libzvbi versions:
    • libzvbi 0.2.43: SHA256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
    • libzvbi 0.2.44: SHA256 a7ffc6f8bf1ed76651c14756a061d662f580ff4de43b49fa82d80a4b80f8434a

Detection Engineering

YARA Rule

rule CVE_2025_2173_libzvbi_uninitialized_pointer {
    meta:
        description = "Detects vulnerable libzvbi versions with uninitialized pointer in vbi_strndup_iconv_ucs2"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-2173"
        hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
    strings:
        $vuln_func = "vbi_strndup_iconv_ucs2"
        $vuln_code = { 48 89 5c 24 08 57 48 83 ec 20 48 8b d9 48 85 d2 74 0f }  // Example bytes
    condition:
        $vuln_func and $vuln_code
}

Sigma Rule

title: CVE-2025-2173 - libzvbi Uninitialized Pointer Exploitation
id: 8def647e-ea27-4fd7-ad33-ff79c2d6d3e3
status: experimental
description: Detects exploitation attempts of CVE-2025-2173 in libzvbi
author: Valters IT
date: 2025-04-10
logsource:
    category: process_creation
    product: linux
detection:
    selection:
        Image|endswith: '/libzvbi.so'
        CommandLine|contains: 'vbi_strndup_iconv_ucs2'
    condition: selection
falsepositives:
    - Legitimate use of libzvbi with normal parameters
level: high

Suricata Rule

alert tcp any any -> any any (msg:"CVE-2025-2173 - libzvbi Uninitialized Pointer Exploitation"; flow:to_server,established; content:"|00 00 00 00|"; depth:4; offset:0; classtype:attempted-admin; sid:1000001; rev:1;)

Remediation & Mitigation

  1. Upgrade libzvbi: Update to version 0.2.44 or later, which includes the patch commit 8def647eea27f7fd7ad33ff79c2d6d3e39948dce.
  2. Input Validation: Implement strict input validation for any data passed to libzvbi functions, especially vbi_strndup_iconv_ucs2.
  3. Network Segmentation: Restrict network access to services using libzvbi to trusted hosts only.
  4. Monitoring: Deploy detection rules (YARA, Sigma, Suricata) to identify exploitation attempts.
  5. Patch Management: Ensure all systems using libzvbi are updated promptly.

Valters IT

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-2173/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.