Vulnerability DatabaseGHSA-vffh-c9pq-4crh

GHSA-vffh-c9pq-4crh
JavaScript vulnerability analysis and mitigation

Overview

A Server-side Template Injection (SSTI) vulnerability was discovered in Uptime Kuma affecting versions >= 1.23.0 <= 1.23.16 and <= 2.0.0-beta.4. The vulnerability exists in certain Notification types (e.g., Webhook, Telegram) where the send() function allows user-controlled renderTemplate input, potentially enabling arbitrary file read on the server. The issue was published and reviewed on October 20, 2025, and has been assigned the identifier GHSA-vffh-c9pq-4crh with a CVSS score of 6.5 (Moderate severity) (GitHub Advisory).

Technical details

The vulnerability stems from how Uptime Kuma renders user-controlled templates via renderTemplate(). The function instantiates a Liquid template engine and parses template arguments without proper sanitization. In notification flows, particularly in webhook.js, the send() implementation directly passes user-editable fields to renderTemplate() when webhookContentType is set to custom. The vulnerability is tracked as CWE-36 (Absolute Path Traversal) and CWE-1336 (Improper Neutralization of Special Elements Used in a Template Engine). The CVSS vector is CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N, indicating network attack vector, low attack complexity, low privileges required, and high confidentiality impact (GitHub Advisory).

Impact

This post-authentication vulnerability allows authenticated users to perform arbitrary file read operations on the server. The attack can lead to unauthorized access to sensitive file contents through the exploitation of Liquid's template tags, particularly when the template engine is not properly restricted (GitHub Advisory).

Exploitability

The vulnerability can be exploited by authenticated users through the Notifications feature. An attacker can create or edit a Webhook notification, set the notification type to Webhook, configure Request Body to Custom Body, and inject malicious template code. For example, using the template tag {% render '/etc/passwd' %} in a JSON payload allows reading the server's password file (GitHub Advisory).

Mitigation and workarounds

The vulnerability has been patched in versions 1.23.17 and 2.0.0. Users are advised to upgrade to these patched versions to mitigate the risk (GitHub Advisory).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-54155HIGH7.7
  • JavaScript logoJavaScript
  • node-opcua
NoNoAug 20, 2026
CVE-2026-54156HIGH7.5
  • JavaScript logoJavaScript
  • node-opcua
NoYesAug 20, 2026
CVE-2026-55451MEDIUM6.9
  • JavaScript logoJavaScript
  • gettext-converter
NoYesAug 20, 2026
CVE-2026-54150MEDIUM6.9
  • JavaScript logoJavaScript
  • next-video
NoYesAug 20, 2026
GHSA-ghvf-qf6h-g8x5HIGHN/A
  • JavaScript logoJavaScript
  • @nocobase/server
NoYesAug 20, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management