Description
apcupsd through 3.14.14 discloses uninitialized stack memory in getupsvar() in src/cgi/upsfetch.c (used by upsstats.cgi, multimon.cgi, and upsfstats.cgi. On the single-field path, when the matched STATUS line has fewer than three whitespace-separated tokens, sscanf("%*s %*s %s", answer) performs no assignment but the function returns success, and thus the caller prints the uninitialized destination buffer into the HTTP response.
Published: 2026-09-30
Score: 3.7 Low
EPSS: < 1% Very Low
KEV: No
Impact: Remote information disclosure through uninitialized memory
Action: Apply Patch
AI Analysis

Impact

This vulnerability exists in the getupsvar() function of apcupsd, where uninitialized stack memory can be printed into an HTTP response. The bug occurs when a STATUS line contains fewer than three whitespace‑separated tokens; the sscanf call assigns no value, yet the caller assumes a successful parse and outputs the uninitialized buffer. The result is that arbitrary, uninitialized data may be sent to a requesting client, leaking internal data or sensitive information.

Affected Systems

apcupsd version 3.14.14 and earlier. The bug is present in all CGI scripts that call getupsvar(), namely upsstats.cgi, multimon.cgi, and upsfstats.cgi. Users running apcupsd on any platform that exposes these CGI endpoints are potentially susceptible.

Risk and Exploitability

The CVSS score of 3.7 indicates low severity, and no EPSS score is available. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires reaching the affected CGI scripts over HTTP, which is common for web‑based UPS monitoring interfaces. An attacker who can craft a request that triggers the parsing logic can obtain the uninitialized data in the response, potentially revealing internal state or configuration details.

Generated by OpenCVE AI on September 30, 2026 at 20:13 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade apcupsd to a version newer than 3.14.14 where getupsvar() properly initializes the buffer
  • If an upgrade is not immediately possible, restrict network access to the CGI scripts to trusted hosts or networks
  • Disable or remove upsstats.cgi, multimon.cgi, and upsfstats.cgi from the web server configuration to eliminate the attack surface

Generated by OpenCVE AI on September 30, 2026 at 20:13 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 30 Sep 2026 20:30:00 +0000

Type Values Removed Values Added
Title Uninitialized Memory Disclosure via CGI in apcupsd

Wed, 30 Sep 2026 16:00:00 +0000

Type Values Removed Values Added
Description apcupsd through 3.14.14 discloses uninitialized stack memory in getupsvar() in src/cgi/upsfetch.c (used by upsstats.cgi, multimon.cgi, and upsfstats.cgi. On the single-field path, when the matched STATUS line has fewer than three whitespace-separated tokens, sscanf("%*s %*s %s", answer) performs no assignment but the function returns success, and thus the caller prints the uninitialized destination buffer into the HTTP response.
First Time appeared Apcupsd
Apcupsd apcupsd
Weaknesses CWE-457
CPEs cpe:2.3:a:apcupsd:apcupsd:*:*:*:*:*:*:*:*
Vendors & Products Apcupsd
Apcupsd apcupsd
References
Metrics cvssV3_1

{'score': 3.7, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: mitre

Published:

Updated: 2026-09-30T15:38:48.231Z

Reserved: 2026-09-30T15:38:47.884Z

Link: CVE-2026-103436

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-09-30T16:17:09.700

Modified: 2026-09-30T17:32:07.107

Link: CVE-2026-103436

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T01:00:10Z

Weaknesses
  • CWE-457

    Use of Uninitialized Variable