CVE-2023-36821 json
Uptime Kuma vulnerable to authenticated remote code execution via malicious plugin installation
published 2023-07-05 3 y ago modified 2026-09-10 1 mo ago also GHSA-7grx-f945-mj96 , EUVD-2024-1492
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 2.0%
- EPSS 2.0% chance of exploitation in 30 days, percentile 81%
- public exploits
- 0
- none known
Summary
Uptime Kuma, a self-hosted monitoring tool, allows an authenticated attacker to install a maliciously crafted plugin in versions prior to 1.22.1, which may lead to remote code execution. Uptime Kuma allows authenticated users to install plugins from an official list of plugins. This feature is currently disabled in the web interface, but the corresponding API endpoints are still available after login. After downloading a plugin, it's installed by calling `npm install` in the installation directory of the plugin. Because the plugin is not validated against the official list of plugins or installed with `npm install --ignore-scripts`, a maliciously crafted plugin taking advantage of npm scripts can gain remote code execution. Version 1.22.1 contains a patch for this issue.
Patch / fix
- npm uptime-kuma 1.22.1
- uptime-kuma_project uptime-kuma 1.22.1
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 2 y ago
Exploit prediction
2.02% chance of exploitation in the next 30 days, higher than 81% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/louislam/uptime-kuma/security/advisories/GHSA-7grx-f945-mj96 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVD | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | uptime-kuma | <1.22.1 |
1.22.1 |
Affected products
- louislam uptime-kuma
- uptime-kuma_project uptime-kuma
Classification
- Weakness
-
- CWE-20 Improper Input Validation
References
-
github.com
/louislam/uptime-kuma/pull/3346
web, patch
-
github.com
/louislam/uptime-kuma/commit/a0736e04b2838aae198c2110db244eab6f87757b
web
-
github.com
/louislam/uptime-kuma/security/advisories/GHSA-7grx-f945-mj96
web, exploit, vendor-advisory
-
github.com
/louislam/uptime-kuma/blob/8c60e902e1c76ecbbd1b0423b07ce615341cb850/server/plugins-manager.js#L210-L216
web, product
-
github.com
/louislam/uptime-kuma/releases/tag/1.22.1
web, release-notes
-
nvd.nist.gov
/vuln/detail/CVE-2023-36821
advisory
-
github.com
/louislam/uptime-kuma
package
Sources
- CVE List CVE-2023-36821
- GitHub Advisory GHSA-7grx-f945-mj96
- NVD CVE-2023-36821
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.