CVE-2025-40949
Telemetry drift only. No threshold crossed and no authority ruling changed.
CVE record, CISA KEV and EPSS as of 2026-10-18.
CVEs like this one computed, by meaning
What to do now held facts and links
- Upgrade to the fixed version for your release line, or later: ruggedcom rox mx5000 firmware 2.17.1; ruggedcom rox mx5000re firmware 2.17.1; ruggedcom rox rx1400 firmware 2.17.1; ruggedcom rox rx1500 firmware 2.17.1; ruggedcom rox rx1501 firmware 2.17.1… upper bounds of the CVE record's affected ranges
- Record your decision, dated and frozen with today's evidence: patch by a date · mitigated by a compensating control · deferred · accepted the risk · not affected
- Check your version against the ranges this record publishes.
What it is stated by the CNA
A vulnerability has been identified in RUGGEDCOM ROX MX5000 (All versions < V2.17.1), RUGGEDCOM ROX MX5000RE (All versions < V2.17.1), RUGGEDCOM ROX RX1400 (All versions < V2.17.1), RUGGEDCOM ROX RX1500 (All versions < V2.17.1), RUGGEDCOM ROX RX1501 (All versions < V2.17.1), RUGGEDCOM ROX RX1510 (All versions < V2.17.1), RUGGEDCOM ROX RX1511 (All versions < V2.17.1), RUGGEDCOM ROX RX1512 (All versions < V2.17.1), RUGGEDCOM ROX RX1524 (All versions < V2.17.1), RUGGEDCOM ROX RX1536 (All versions < V2.17.1), RUGGEDCOM ROX RX5000 (All versions < V2.17.1). Affected devices do not properly sanitize user-supplied input in the Scheduler functionality of the Web UI, allowing commands to be injected into the task scheduling backend. This could allow an authenticated remote attacker to execute arbitrary commands with root privileges on the underlying operating system.
- weakness
- CWE-78: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
- affected
- Siemens RUGGEDCOM ROX MX5000; Siemens RUGGEDCOM ROX MX5000RE; Siemens RUGGEDCOM ROX RX1400; Siemens RUGGEDCOM ROX RX1500; Siemens RUGGEDCOM ROX RX1501; Siemens RUGGEDCOM ROX RX1510; Siemens RUGGEDCOM ROX RX1511; Siemens RUGGEDCOM ROX RX1512; Siemens RUGGEDCOM ROX RX1524; Siemens RUGGEDCOM ROX RX1536; Siemens RUGGEDCOM ROX RX5000
- published ranges
- siemens ruggedcom rox mx5000 firmware < 2.17.1; siemens ruggedcom rox mx5000re firmware < 2.17.1; siemens ruggedcom rox rx1400 firmware < 2.17.1; siemens ruggedcom rox rx1500 firmware < 2.17.1; and 7 more on the CVE page
- first unaffected version, by branch
- ruggedcom rox mx5000 firmware 2.17.1; ruggedcom rox mx5000re firmware 2.17.1; ruggedcom rox rx1400 firmware 2.17.1; ruggedcom rox rx1500 firmware 2.17.1; ruggedcom rox rx1501 firmware 2.17.1…
- severity
- 9.1 CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
- assigned by
- siemens
- published
- 2026-05-12
check us cert-portal.siemens.com
Exploit code held, dated
- exploit code
- None held in the PoC-in-GitHub feed. A public repository changes this brief.
What moved held, dated
| date | EPSS | event |
|---|---|---|
| 12 May 2026 | 0.00173 | |
| 18 May 2026 | 0.00228 | |
| 13 Jun 2026 | 0.00248 | |
| 15 Jun 2026 | 0.00542 | scoring model v2026.06.15 |
| 23 Jun 2026 | 0.00543 | |
| 18 Jul 2026 | 0.00674 |
6 observations held. A step marked with a scoring model moved because the measurement was replaced, not because the vulnerability changed.
Outside the record researched, cited
This section reads the record's references and adds cited findings from outside it. It needs an account. Everything above is held facts and is complete without it.
What would change this brief held, dated
- CISA KEV
- Not listed in the catalogue we hold. A listing changes this brief.
- exploit probability
- 0.01 on 2026-07-18 (FIRST's EPSS, a probability and not evidence of exploitation). Next band line: 10% (0.10). Crossing a line changes this brief.
- fix
- Held: ruggedcom rox mx5000 firmware 2.17.1; ruggedcom rox mx5000re firmware 2.17.1; ruggedcom rox rx1400 firmware 2.17.1; ruggedcom rox rx1500 firmware 2.17.1; ruggedcom rox rx1501 firmware 2.17.1…. A newer fix from the CNA or OSV changes this brief.
How to check this
Every value above is held with two dates: when it was true upstream (as_of) and when we recorded it (tx_from). Re-derive the exploit probability as it stood on any date:
SELECT value, source, source_version, as_of, tx_from
FROM volatile_valid_as_of('CVE-2025-40949', '2026-10-29T23:59:59.999999Z', now());