Attribute Injection leading to XSS in uptime-kuma

uptime-kuma Updated 02 Oct 2025

Summary

24/11/2023
Yes i
Moderate
6.1

CVE-2023-49276: Attribute Injection leading to XSS(Cross-Site-Scripting). Affects uptime-kuma versions >= 1.20.0, < 1.23.7. Fixed in 1.23.7. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored MarkAI Find prospects already talking about the problem you solve AI watches the communities your customers use to find qualified prospects, then alerts you when a conversation is worth joining. See MarkAI

Background

uptime-kuma is an open-source package that provides a status page for monitoring the uptime of various services. It allows users to create and customize status pages, and includes integration with Google Analytics for tracking website traffic. However, a vulnerability has been discovered in uptime-kuma that allows for attribute injection leading to cross-site scripting (XSS) attacks.

Vulnerability Detail

The vulnerability in uptime-kuma arises from the custom status interface, which allows users to set an independent Google Analytics ID. The template used in this interface has not been properly sanitized, making it susceptible to attribute injection. An attacker can exploit this vulnerability by injecting malicious code into the Google Analytics ID field, which will then be executed when the status page is viewed by other users. This can lead to XSS attacks, allowing the attacker to steal sensitive information, perform actions on behalf of the user, or manipulate the content of the status page.

How To Fix

Minimum fixed version

1.23.7

This is the first release that contains the fix.

npm install uptime-kuma@1.23.7

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

As a temporary workaround, users can manually sanitize the input before entering it into the Google Analytics ID field. This can be done by removing any special characters or HTML tags that could be used for injection. However, this workaround is not foolproof and should be replaced with a proper fix as soon as possible.

Conclusion

The attribute injection vulnerability in uptime-kuma can lead to cross-site scripting (XSS) attacks, allowing attackers to steal sensitive information, perform actions on behalf of users, or manipulate the content of status pages. It is important to apply the recommended fix by updating to the latest version of uptime-kuma and properly sanitizing user input to prevent attribute injection. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for uptime-kuma →

Share this vulnerability

FAQ

uptime-kuma is an open-source package that provides a status page for monitoring the uptime of various services. It allows users to create and customize status pages, and includes integration with Google Analytics for tracking website traffic.

Attribute injection is a type of vulnerability where an attacker can inject malicious code into an attribute value, which is then executed by the application. In the case of uptime-kuma, the attribute injection occurs in the Google Analytics ID field, allowing for cross-site scripting (XSS) attacks.

Cross-site scripting (XSS) is a type of vulnerability where an attacker can inject malicious scripts into a website, which are then executed by the user's browser. This can allow the attacker to steal sensitive information, perform actions on behalf of the user, or manipulate the content of the website.

An attacker can exploit this vulnerability by injecting malicious code into the Google Analytics ID field in the custom status interface of uptime-kuma. When other users view the status page, the injected code will be executed, leading to XSS attacks.

Yes, a fix is available for this vulnerability. The template used in the custom status interface should be properly sanitized to prevent attribute injection. It is recommended to update to the latest version of uptime-kuma that includes the fix.

Related vulnerabilities

Recent vulnerabilities recorded for uptime-kuma.

How To Fix

Minimum fixed version

1.23.7

This is the first release that contains the fix.

npm install uptime-kuma@1.23.7

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback