Command injection in Network UPS Tools upsmon via ups.alarm
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- High
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-78.
Summary
Network UPS Tools (nut) from 2.8.3 through 2.8.5 contains an OS command injection flaw in upsmon (CWE-78). When an operator configures NOTIFYCMD with EXEC for ALARM, upsmon places the server-supplied ups.alarm value into shell commands, so shell metacharacters in it are evaluated. An attacker who controls that value, through a malicious or compromised upsd or a man-in-the-middle on a plaintext connection, can run arbitrary OS commands as the upsmon account, commonly root.
Written with Claude Haiku 5.5 from the sources below · 2026-11-04
Description from the CNA
Network UPS Tools is a collection of programs which provide a common interface for monitoring and administering UPS, PDU and SCD hardware. From 2.8.3 to 2.8.5, upsmon in clients/upsmon.c inserts the server-supplied ups.alarm value into shell commands executed by notify(), async_notify(), and wall(). When a monitored device reports an ALARM state and an operator has configured NOTIFYCMD with EXEC in NOTIFYFLAG ALARM, shell metacharacters in the alarm text are evaluated on POSIX or Windows and can execute arbitrary operating-system commands as the upsmon account, which is commonly root. An attacker can control the value through a malicious or compromised upsd, a man-in-the-middle on a plaintext upsd to upsmon connection, or a compromised UPS device whose driver supplies the alarm upstream of upsd; TLS between upsd and upsmon does not mitigate the compromised-device path. This vulnerability is fixed in 2.8.6.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| networkupstools | nut | 2.8.3 – 2.8.5 | — | No fix listed | CNA |
- nut Vendornetworkupstools Affected 2.8.3 – 2.8.5 Fixed in — No fix listed CNA
Remediation
Upgrade Network UPS Tools to 2.8.6, which fixes this flaw.
Written with Claude Haiku 5.5 from the sources below · 2026-11-04
Vendor assessments
Timeline
- 2026-11-03 Threatist record created from CVE-2026-54161
- 2026-11-03 CISA SSVC decision points changed
- 2026-11-03 Priority changed: MEDIUM → LOW
- 2026-11-04 Affected versions changed · Red Hat
- 2026-11-04 CVSS score added · Red Hat
References
Other 5
- https://github.com/networkupstools/nut/security/advisories/GHSA-mjgp-j4gm-6qg5
- https://github.com/networkupstools/nut/pull/3499
- https://github.com/networkupstools/nut/commit/98e073d4cc31f9c73e2fa0c2677540487d902fe7
- https://github.com/networkupstools/nut/commit/dffba911504866695be698bb5ec49eac40d0f66a
- https://github.com/networkupstools/nut/commit/ecf98e7542e4ae2b62b211622ee26989274b2220
More networkupstools vulnerabilities
- TI-2012-02556 Buffer overflow in the addchar function in common/parseconf.c in upsd in Network UPS… CVSS 2.0HIGH 7.5
- TI-2026-39070 Network UPS Tools: A PWN Request in make-dist workflow can execute PR-controlled code with write-scoped GITHUB_TOKEN CVSS 3.1HIGH 8.2
- TI-2026-85709 Uninitialized stack memory leak in NUT blazer_usb driver CVSS 3.1LOW 2.4
Sources
- CVE-2026-54161 · CVE Program
- CVE-2026-54161 · NVD
- FIRST EPSS
- CVE-2026-54161 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences