SecurinZero Days
    Email Us
    Zero-Day Research/CVE-2026-7828
    ▲ MediumCVSS 5.3✓ Patched

    Integer Overflow in Repeater win_log malloc — Bounded (UltraVNC)

    UltraVNC repeater through 1.8.2.2 contains an integer overflow in the HTTP request logging path. In repeater/webgui/settings.c:336, the win_log() function allocates list nodes via malloc(sizeof(struct LIST) + strlen(line)), where line is derived from HTTP request URIs. If strlen(line) is sufficiently large, the addition overflows to a value smaller than sizeof(struct LIST), causing a heap allocation smaller than required. The subsequent strcpy of the full string into the undersized allocation produces a heap buffer overflow. In the current implementation this overflow is bounded by the HTTP receive buffer size (WI_RXBUFSIZE = 153600 bytes, well below SIZE_MAX on 32-bit builds), limiting practical exploitability to a partial heap write. A remote unauthenticated attacker can trigger the theoretical overflow path by sending a maximally-sized URI in an HTTP request to the repeater HTTP port.

    CVE IDCVE-2026-7828
    CVSS v3.15.3 Medium
    VendorUltraVNC
    CWECWE-190: Integer Overflow to Buffer Overflow
    DisclosedJun 3, 2026
    StatusFixed
    All advisories
    • 01Description
    • 02Proof of Concept
    • 03Vulnerable Code
    • 04Trigger Conditions
    • 05Impact
    • 06Remediation
    • 07Timeline
    • 08References
    01/Description

    What this actually is.

    Technical background, root cause, and affected surface.

    In repeater/webgui/settings.c:336, win_log() allocates malloc(sizeof(struct LIST)+strlen(line)) with no integer overflow guard. The addition can overflow if strlen(line) approaches SIZE_MAX. Currently bounded by WI_RXBUFSIZE=153600, preventing exploitable overflow. Latent defect only.

    Vendor
    UltraVNC
    Product
    UltraVNC Repeater
    Severity
    Medium
    CVSS Score
    5.3
    Status
    Fixed
    Vector
    CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
    CWE
    CWE-190: Integer Overflow to Buffer Overflow
    02/Proof of Concept

    From one request
    to root shell.

    Reproduced in a sandboxed environment. Requires only LAN or WiFi adjacency.

    5.3CVSS 3.1
    VectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
    ScopeUnchanged
    ImpactC:N / I:N / A:L
    SeverityMedium
    PoC · Exploitation Steps▲ trigger
    01No PoC — not exploitable via current HTTP path.
    03/Vulnerable Code

    The bug, and the fix.

    curr = (struct LIST*)malloc(sizeof(struct LIST) + len); // settings.c:336 // len = strlen(line) from HTTP URI; no overflow guard // Currently bounded: len <= WI_RXBUFSIZE=153600

    Root cause: No integer overflow check before malloc size computation. Relies on implicit bounding from HTTP buffer rather than explicit length validation at the allocation site.

    04/Trigger Conditions

    When does this fire?

    All conditions must be true for the exploit to succeed.

    Currently unexploitable via HTTP path (bounded at 153,600 bytes). Would require strlen(line) approaching SIZE_MAX via an alternative code path not present in current source.

    05/Impact

    What an attacker does to you.

    Post-exploitation outcomes mapped to CVSS impact metrics.

    Latent defect only. No current exploitable path. If input bound changes: undersized malloc followed by strcpy heap overflow.

    06/Remediation

    Fix it. In this order.

    A runbook, not a checklist. Sequence matters — assume compromise before you act.

    Add explicit length cap before allocation. Vendor fix: if(len > 512) len = 512; INT_MAX overflow guard added before malloc.

    Securin advisory — For coordinated remediation support or threat-actor briefings related to CVE-2026-7828, contact disclose@securin.io
    07/Disclosure Timeline

    Vendors moved in days.
    Attackers in hours.

    Reconstructed from vendor advisories, CISA bulletins, and Securin research records.

    2026-06-02: Discovered during static analysis; 2026-06-17: Reported to vendor; 2026-06-17: Fix validated; 2026-09-03: Planned public disclosure

    Timeline recorded · Disclosure coordinated by Securin

    08/References

    Cite, verify, go deeper.

    Primary sources — NVD, CISA KEV, and machine-readable IoC feed.

    NVD

    NVD — CVE-2026-7828

    nvd.nist.gov/vuln/detail/CVE-2026-7828 →
    SEC

    Securin VI — Full Technical Analysis

    vi.securin.io →
    REF

    CVE-2026-7828; repeater/webgui/settings.c:336; phase3_deep_analysis.md FINDING-009

    Let Securin level up your security posture.

    Get a live exposure assessment, threat-actor briefing tailored to your sector, and IoC mapping for your SIEM.

    Browse all advisories
    SecurinSecurinZero Days

    Securin's zero-day research operation combines frontier AI models with a decade of offensive expertise — discovering, validating, and coordinating the disclosure of high-impact vulnerabilities at a scale and speed no human team achieves alone.

    Glossary
    © 2026 Securin Inc · CVE Numbering Authority
    Privacy Policy·Data Processing Addendum