Skip to content

Build Independently confirmed2 publishers 3 min read Published

Attackers exploited JetBrains' own TeamCity bug to operate inside Cadence for 16 days

JetBrains says CVE-2026-63077 lets an unauthenticated attacker run arbitrary commands on a TeamCity server. The rotation list it handed Cadence users doubles as the recovery scope for anyone self-hosting.

The Engineer · Build desk

Send a correction

Illustration accompanying Attackers exploited JetBrains' own TeamCity bug to operate inside Cadence for 16 days
Generated illustration

What happened

  • JetBrains has confirmed unauthorized access to Cadence, its PyCharm-integrated hosted compute service, along with the exposure of customer data associated with use of the service.
  • Cadence used TeamCity to orchestrate its workloads, and JetBrains confirmed that environment was vulnerable to CVE-2026-63077 and was exploited through it.
  • Exploitation of api.cadence.jetbrains.com was identified from August 8, discovered on August 23, and the server was taken offline on August 24.
  • JetBrains says the threat actors accessed personal data and extracted it from the affected environment, and that it has contacted affected users directly.
  • The advisory publishes exploitation IP addresses plus indicator categories including new external service accounts, altered cloud IAM policies, and unexpected package publication.

Why it matters

  • Who's exposed exposure The recovery boundary is not the CI host. JetBrains points users at AWS accounts, S3 buckets, deployment environments and package registries reachable with build credentials, which is where a self-hosted TeamCity compromise also lands.
  • What it limits constraint The secrets inventory JetBrains offers on request is explicitly not exhaustive, so rotation scope cannot be inherited from a vendor list and defaults to everything the orchestrator could authenticate as.
  • Who has to decide decision Treating executions and their outputs as untrusted forces a call on artifacts built during the window: ship them, rebuild them on clean infrastructure, or hold releases until provenance is re-established.
  • What it sets up precedent A vendor exploited on its own product through its own disclosed CVE raises the bar for anyone claiming their CI is current; "we applied the patch" now reads as an assertion that wants a build number attached.

Read the remediation list as an asset inventory. JetBrains tells Cadence users to revoke and rotate every credential and secret that may have been used to run executions [10], then to go looking for suspicious activity in AWS accounts, S3 buckets, deployment environments, and package or container registries reachable with those credentials [11]. Then repositories, for unauthorized changes during the affected window, and any project files synced to Cadence from PyCharm, for secrets embedded in them [12]. That is not generic hygiene advice. It is a written-down list of what a build orchestrator holds keys to, produced by people who have just watched someone else hold them.

The instruction that turns this from patching into incident response is the last one: treat all executions, including their inputs and outputs, as potentially untrusted [13]. A patched server tells you nothing about what a binary built on the unpatched one contains.

Fifteen days passed between the earliest activity JetBrains has identified and the day it found the exploitation [20]. One more day to take the server off the network [22]. Treat that 15 as a measurement of JetBrains' detection on infrastructure it owns and instruments, not as a figure that transfers. For it to mean anything in your environment, you would need retained authentication logs on the TeamCity server itself, plus logs on every downstream service that server could authenticate to, covering the whole window. Self-hosted CI tends to ship build logs somewhere durable and let server access logs roll at whatever the distro default is. If yours rolls at seven days, the affected period closed before your evidence begins [7].

Two sentences in the advisory do the same work from opposite ends. Cadence users can request an inventory of the credentials and secrets associated with their usage, and JetBrains says that inventory should not be considered exhaustive [14]. Separately, it says the published indicators are not exhaustive and that their absence does not confirm a system was unaffected [16]. Neither artifact lets you narrow scope. Scope is whatever your server could authenticate as, which is why the rotation list is longer than the compromise you can prove.

Order matters, and it runs against instinct. The vulnerability allows an unauthenticated attacker to execute arbitrary commands on a vulnerable server [4]. Rotate before you patch and the new secrets land on a machine that still accepts unauthenticated commands, so you have paid the rotation cost twice and bought nothing. Network isolation or patch first, then rotate, then review connected systems with the indicator categories JetBrains published [17], which are worth reading as a checklist of the places CI credentials get spent: new service accounts in external services, changed IAM policies, modified access tokens, unexpected package publication.

The vendor that ships TeamCity was running a Cadence environment that the fix for its own critical CVE had not reached [5]. The queue for maintenance windows is apparently no shorter inside the building.

One caveat on reading this at all: the investigation is ongoing and the post is being revised as it progresses, with the version I have timestamped August 28 at 11:50 CEST [19]. The confirmed facts include extraction of personal data from the affected environment [9]. The affected period may not be final.

What to watch

  • Whether JetBrains extends the affected period past August 24 or names additional Cadence servers as the investigation continues.
  • Which categories of personal data JetBrains ultimately confirms were extracted, since the incident post is still being revised.
  • Whether the published exploitation IP addresses turn up in other operators' TeamCity logs, which would separate targeting from broad scanning.

Clarity's read

What the record supports and how the coverage leans. The claims behind it follow.

Reality

Evidence79
Adoption71
Hype gap−9
Incentives73
Confidence74
Why these scores

Claim ledger

Ranked by verification strength, evidence, and original report placement.

  1. [1]

    JetBrains says it is investigating a security incident affecting JetBrains Cadence and has confirmed unauthorized access to the service and the exposure of customer data associated with its use.

    Reported SupportedView cited source
  2. [2]

    Cadence is a JetBrains-hosted service that integrates with PyCharm through an optional plugin and lets users run their projects on cloud compute resources.

    Reported SupportedView cited source
  3. [3]

    Cadence uses JetBrains TeamCity to orchestrate its workloads.

    Reported SupportedView cited source
  4. [4]

    JetBrains disclosed CVE-2026-63077, a critical vulnerability in TeamCity that can allow an unauthenticated attacker to execute arbitrary commands on a vulnerable server.

    Reported SupportedView cited source
  5. [5]

    JetBrains confirmed the Cadence environment was vulnerable to CVE-2026-63077 and was exploited through this vulnerability.

    Reported SupportedView cited source
  6. [6]

    JetBrains confirmed the following Cadence server was successfully exploited: api.cadence.jetbrains.com.

    Reported SupportedView cited source
  7. [7]

    JetBrains gives the affected period as August 8, 2026 to August 24, 2026.

    Reported SupportedView cited source
  8. [8]

    JetBrains identified exploitation activity from August 8, 2026, discovered the exploitation on August 23, 2026, and took the affected server offline on August 24, 2026.

    Reported SupportedView cited source
  9. [9]

    JetBrains confirmed the threat actors accessed personal data and extracted it from the affected environment.

    Reported SupportedView cited source
  10. [10]

    JetBrains strongly recommends Cadence users revoke and rotate all credentials and secrets that may have been used to run Cadence executions.

    Reported SupportedView cited source
  11. [11]

    JetBrains recommends users review connected systems for suspicious activity, particularly AWS accounts, S3 buckets, deployment environments, package and container registries, and other systems accessible using the credentials involved.

    Reported SupportedView cited source
  12. [12]

    JetBrains recommends reviewing source code repositories for unauthorized changes made during the affected period, and reviewing source code or project files synchronized to Cadence from PyCharm, rotating any credentials, tokens or other sensitive information contained within them.

    Reported SupportedView cited source
  13. [13]

    JetBrains tells users to treat all executions, including their inputs and outputs in the Cadence project, as potentially untrusted.

    Reported SupportedView cited source
  14. [14]

    Cadence users can contact JetBrains to request an inventory of the credentials and secrets associated with their Cadence usage, but JetBrains says the inventory should not be considered exhaustive.

    Reported SupportedView cited source
  15. [15]

    JetBrains published six IP addresses associated with observed exploitation activity: 150.109.230.104, 43.153.227.206, 62.210.127.48, 210.247.242.190, 15.235.225.205, and 152.233.30.18.

    Reported SupportedView cited source
  16. [16]

    JetBrains says the listed indicators of compromise are not exhaustive and that the absence of these indicators does not confirm that an account or system was unaffected.

    Reported SupportedView cited source
  17. [17]

    The indicator list includes activity from August 8, 2026 onwards using credentials previously stored in or accessible through Cadence, unexpected repository clones or commits, changes to repository secrets, webhooks, collaborators or permissions, new or modified personal access tokens, API tokens or SSH keys in external services, new service accounts in external services, unexpected changes to cloud IAM roles, policies or permissions, unexpected access to cloud storage including S3 buckets, and unexpected publication or modification of packages or releases.

    Reported SupportedView cited source
  18. [18]

    JetBrains says it has contacted affected users directly and taken steps to contain the incident.

    Reported SupportedView cited source
  19. [19]

    JetBrains says the investigation is ongoing and will update the post as it progresses; the version cited was last updated August 28, 2026, 11:50 CEST.

    Reported SupportedView cited source
  20. [20]

    Fifteen days elapsed between the earliest exploitation activity JetBrains identified and the day JetBrains discovered the exploitation.

    Derived Supported
  21. [21]

    The affected period JetBrains defines spans 16 days.

    Derived Supported
  22. [22]

    One day elapsed between JetBrains discovering the exploitation and taking the affected server offline.

    Derived Supported

Sources

2 independent publishers whose own reporting we read for this story.

  1. blog.jetbrains.com

    1 article · August 28, 2026

    Security Incident Affecting JetBrains Cadence
  2. thenewstack.io

    1 article · August 28, 2026

    JetBrains told everyone to patch. It didn’t patch itself.

Topics and entities

Topics