Description
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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| networkupstools | nut | >= 2.8.3, <= 2.8.5 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | nut | No fix yet | — |
| Debian 13 | nut | No fix yet | — |
| Debian 12 | nut | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | nut | No fix yet | — |
| Ubuntu 26.04 LTS | nut | No fix yet | — |
| Ubuntu 25.10 | nut | No fix yet | — |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | nut | 2.8.5-2.1 | openSUSE-SU-2026:11367-1 |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
GitHub 1 repository
-
ja-errorpro/CVE-2026-54161 ★ 1 · Jun 12, 2026
upsmon: remote OS command injection (RCE) via attacker-controlled ups.alarm in NOTIFYCMD execution
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Advisories 1
- openSUSE-SU-2026:11367-1 libnutclient2-2.8.5-2.1 on GA media SUSE / openSUSE Security Updates · Jul 25, 2026
References
- 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