Chartbrew: Cross-tenant project takeover via body.team_id in /project routes
Chartbrew server 5.2.2 and earlier are affected, most relevant where default self-signup is enabled. Fixed in 5.2.3.
Written by anthropic/claude-haiku-5.5 from the sources below. Verify against them.
- Exploited
- No known exploitation
- Fix
- Fixed in 5.2.3
- Who is exposed
- Specific setups only
Do first: Check whether your setup matches what the bug needs. Chartbrew server version 5.2.2 or earlier is affected. Default self-signup is enabled, so anyone can register and become a team owner of their own team.
- Last modified
- A 0-100 score for how much a CVE matters across the industry: exploitation, exposure, how widely the software is used, severity and whether a fix exists.What do these mean? →
- 17/100 · provisional
- How many real-world setups can hit the bug, from the vendor's advisory and CISA data. It does not know your setup.What do these mean? →
- Specific setups only
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
Chartbrew, an open-source web app that builds charts from databases and APIs, has a flaw in its project routes that lets a logged-in user control projects belonging to other teams. Remotely, an attacker with a low-privilege account that is an owner or admin of their own team can move a victim's project into their team, gain full read and write access, make it public, remove its password protection, or delete it.
Read the original description
Chartbrew is an open-source web application that can connect directly to databases and APIs and use the data to create charts. Prior to 5.2.3, the shared project permission check trusted a caller-controlled team_id and let the teamOwner/teamAdmin branch continue without confirming that the target project belonged to that team. The vulnerable surface is project routes and related authorization checks that accepted user-controlled project identifiers. An authenticated user who is an owner or admin of their own team submits a victim project id together with the attacker's own team_id in the request body; default self-signup grants the required role on the user's own team. Authorization is evaluated against the attacker-selected team instead of the target project's team, and the update path mass-assigns the request body without a project field allow-list. The attacker needs a valid Chartbrew account, an owner or admin role on their own team, and a victim project identifier; requests without the body team_id trick are rejected. The attacker can re-parent the victim project into their own team, gain full read and write access, expose it publicly, remove password protection, and cause the victim to lose it; the shared delete route also permits cross-tenant deletion. This issue is fixed in version 5.2.3.
cve.now Index
- Exploitation?/40Unknown. No CISA SSVC exploitation rating yet
- Exposure8/25Specific setups only, reachable over the network
- Reach?/20Unknown. No tracked technology or package matched
- Severity8.8/10CVSS 8.8
- No patch0/5No signal
What would change the score
- Would score about 67 if added to CISA KEV
- Would score about 62 if CISA's SSVC rates exploitation active
- Would score about 24 if CISA's SSVC rates it automatable
What to do
Check whether your setup matches what the bug needs.
Chartbrew server version 5.2.2 or earlier is affected. Default self-signup is enabled, so anyone can register and become a team owner of their own team.Upgrade to a fixed version: 5.2.3.
Timeline
- CVE published
- First seen by cve.now
Affected versions
- chartbrew chartbrew
fixed in 5.2.3
Evidence 3
- Advisory
- Repository
- Repository
Corrections
None so far.
Something wrong on this page? Report an error. Every fix is listed here.
Questions about CVE-2026-85712
Is CVE-2026-85712 being exploited?
It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data
What does this mean?
An authenticated user can abuse the team_id field in the /project routes to read, rewrite, take over, publicly expose, remove the password of, or delete another team's project.Source: github.com
Which versions are affected by CVE-2026-85712?
chartbrew: before 5.2.3.Source: cve.now feed data
Am I affected, and how do I check?
Chartbrew server version 5.2.2 or earlier is affected. The listed conditions also include default self-signup being enabled (CB_RESTRICT_SIGNUP=0), where anyone can register and become a team owner. To check, look at the server version and whether CB_RESTRICT_SIGNUP is set to 0.Source: github.com
How do I fix CVE-2026-85712?
Upgrade the Chartbrew server to 5.2.3 or later, which is the fixed version listed.Source: github.com