IT SBIT Services
Schneeberger
DEEN
CVE tracker

Tianji: SQL injection via timezone parameter in analytics queries

CVE-2026-55239High 8.8

← All vulnerabilities

Summary

Tianji is an open-source analytics, uptime monitoring and server status platform. The getDateQuery() function inserts the timezone value from request data or the timezone HTTP header into raw SQL without parameter binding, allowing SQL injection. Any authenticated workspace member, including a read-only viewer, can reach the affected queries, and an attacker can read or modify data in the shared PostgreSQL database, including credentials, API keys and tenant data, or disrupt the service.

Affected

  • Tianji versions before 1.31.29
  • VulDB lists the range as up to 1.31.28
  • Vendor advisory states the range is below 1.31.29; verify against the primary advisory

Fixed in

  • Version 1.31.29 (released 10 Jun 2026)

Workaround

Unknown.

Exploitation

  • No evidence of exploitation in the wild found
  • CISA SSVC: exploitation none, automatable no
  • Not listed in KEV
  • No public proof of concept found

Our recommendation

  • Identify all Tianji instances and their versions
  • Upgrade to 1.31.29 or later; the same release also fixes CVE-2026-55240 (critical template issue), so prioritise it
  • Audit workspace memberships and remove unneeded accounts
  • Restrict network access to the Tianji web interface (VPN or internal-only)
  • Limit the database account's privileges to what the application needs
  • Review database and logs for unusual queries

Public exploits

PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.

Research sources

Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 31 Oct 2026, 16:32.

Original description (NVD)

Tianji is an open source analytics, uptime monitoring, and server status platform. Prior to 1.31.29, the getDateQuery() function in src/server/utils/prisma.ts constructs raw SQL through Prisma.sql() by interpolating the timezone request value without parameter binding. The timezone value can reach affected analytics queries through request data or the timezone HTTP header, and workspaceProcedure permits any authenticated workspace member, including a read-only viewer, to reach those queries. An attacker can execute arbitrary SQL against the shared PostgreSQL database, which can disclose or modify credentials, API keys, and tenant data or make the service unavailable. This issue is fixed in version 1.31.29.

NVD references (3)

Sources

The tracker combines official, freely usable data sources – updated continuously:

This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.

Affected? We can help.

We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.