CVE Catalog

CVE-2026-55240

CriticalCVSS 9.1
Published: Translated: NVD NIST

Summary

Tianji is an open source analytics, uptime monitoring, and server status platform. Prior to 1.31.29, formatString() in src/server/utils/template.ts passes survey feedTemplate and monitor notification templates to lodash template(), while the default evaluate pattern remains enabled. A workspace administrator can store an evaluate block using the <% code %> form, and the public survey.submit endpoint renders a survey template when an unauthenticated user submits a response. The compiled template executes server-side JavaScript in the Tianji Node.js process, allowing command execution, secret disclosure, data modification, or service disruption. This issue is fixed in version 1.31.29.

Risk Assessment

An attacker can exploit template injection to execute arbitrary server-side code, leading to full compromise of the Tianji process and data disclosure.

Recommendation

Upgrade Tianji to version 1.31.29 or later and review survey and notification templates for unauthorized code blocks.

Other vulnerabilities in Tianji

Original NVD description (English source)

Tianji is an open source analytics, uptime monitoring, and server status platform. Prior to 1.31.29, formatString() in src/server/utils/template.ts passes survey feedTemplate and monitor notification templates to lodash template(), while the default evaluate pattern remains enabled. A workspace administrator can store an evaluate block using the <% code %> form, and the public survey.submit endpoint renders a survey template when an unauthenticated user submits a response. The compiled template executes server-side JavaScript in the Tianji Node.js process, allowing command execution, secret disclosure, data modification, or service disruption. This issue is fixed in version 1.31.29.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS