IT SBIT Services
Schneeberger
DEEN
CVE tracker

Cronicle: Privilege escalation via uid/gid injection in event API

CVE-2026-58255High 8.8

← All vulnerabilities

Summary

Cronicle, a multi-server task scheduler with a web UI and API, lets users with create_events and run_events rights (or a scoped API key) inject top-level uid and gid fields into events. Because launchJob copies the event into the job and the default shellplug and urlplug plugins do not define a uid, the injected identity is used at process launch. On a root-daemon installation, a low-privilege user can run jobs as any user, including root, bypassing the administrator-only run-as-user control.

Affected

  • Cronicle versions before 0.9.121 (GHSA lists <= 0.9.120 as affected)
  • Root-daemon installations are most severely affected

Fixed in

  • Upgrade to Cronicle 0.9.121 or later

Workaround

Unknown. No vendor-published workaround found.

Exploitation

  • No confirmed exploitation in the sources
  • One aggregator lists no public proof of concept
  • CISA SSVC: exploitation none, automatable no, technical impact total

Our recommendation

  • Identify all Cronicle instances and their versions and upgrade those at or below 0.9.120 to 0.9.121
  • Until upgraded, restrict create_events and run_events rights and scoped API keys to trusted users
  • Audit existing events for unexpected top-level uid or gid fields
  • Avoid running the Cronicle daemon as root where the setup allows it
  • Check whether the web UI or API is reachable from the internet and restrict access if not needed

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, 09:42.

Original description (NVD)

Cronicle is a multi-server task scheduler and runner, with a web based front-end UI. Prior to 0.9.121, a non-administrator user or scoped API key with `create_events` and `run_events` privileges can inject top-level `uid` and `gid` fields through `/api/app/create_event` or `/api/app/update_event`. In `lib/api.js`, `requireValidEventData` uses `validateOptionalParams` as a partial allow-list that silently passes unknown keys, storing the injected fields verbatim. In `lib/job.js`, `launchJob` copies the whole event into the job, and a plugin `uid` overrides the event `uid` only when the plugin defines one. The default `shellplug` and `urlplug` plugins do not define a `uid`, so the event-controlled identity survives into child-process launch. On a root-daemon installation, this lets a low-privileged user run jobs as arbitrary users, including root, bypassing the otherwise administrator-only run-as-user control. This API-side event injection is distinct from the job-output `uid`/`gid` injection addressed by CVE-2026-39401. This issue is fixed in version 0.9.121.

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.