Atlassian Data Center CVE-2026-21589: unauthenticated file read in Jira, Confluence, Bitbucket, Bamboo, Crowd, Fisheye and Crucible, exploited
A pre-auth file read hits every Atlassian Data Center product and can leak Crowd credentials; exploited. Patch, or apply Atlassian’s block rule.
- Published
- Updated
- Ecosystem
- Enterprise softwareCI/CD
- Fixed in
- Jira 9.12.40, 10.3.26, 11.3.12; JSM 5.12.40, 10.3.26, 11.3.12; Confluence 9.2.26, 10.2.19; Bitbucket 9.4.26, 10.2.8, 10.5.1; Bamboo 10.2.24, 12.1.12; Crowd 6.3.7, 7.0.3, 7.1.7, 7.2.4; Fisheye and Crucible 4.9.15
- Exploitation
- Yes. VulnCheck reported exploitation against Bamboo on 7 October 2026; in CISA KEV since 15 October 2026
Live scores
CVE-2026-21589- EPSS
- 0.995
very likely to be attacked soon - VEDAS
- 0.987
strong exploit evidence - On CISA KEV
- Yes, since 2026-10-15
Thin horizontal line: the “likely” (EPSS 0.10) or “strong” (VEDAS 0.90) threshold. Shaded “no data” areas are periods when cve-scores did not publish. The vertical line is the day CISA added it to its exploited list.
What happened
On 5 October 2026, Atlassian disclosed CVE-2026-21589, rated CVSS 4.0 9.3. An unauthenticated attacker can read specific files inside the web application root directory. They must know the exact file name and path; the bug cannot list directories (Atlassian). Atlassian said Cloud was patched and it found no evidence of exploitation there. For Data Center it said it “cannot confirm if your instances have been affected”.
On 6 October, watchTowr traced the bug to the shared atlassian-plugins-webresource library, fixed by moving from 6.0.7 to 6.0.8. The resource router turns :: back into /, so a request such as /download/resources/<plugin>/images/..::..::..::WEB-INF::web.xml walks out of a plugin’s resource folder. watchTowr used it to read WEB-INF/classes/crowd.properties from Jira. That file holds the Crowd application name, its plaintext password and the Crowd URL. With those, watchTowr called the Crowd REST API, created a user and added it to jira-administrators (watchTowr). A firewall rule that limits which IPs can use the Crowd API could block that last step.
On 7 October, VulnCheck added the CVE to its own KEV list, citing exploitation against Bamboo Data Center (Infosecurity Magazine). CISA added it on 15 October, with a due date of 18 October (CISA KEV).
Am I affected?
Every Data Center version below these fixed builds is affected (Atlassian):
| Product | Fixed versions |
|---|---|
| Jira Software Data Center | 9.12.40, 10.3.26, 11.3.12 |
| Jira Service Management Data Center | 5.12.40, 10.3.26, 11.3.12 |
| Confluence Data Center | 9.2.26, 10.2.19 |
| Bitbucket Data Center | 9.4.26, 10.2.8, 10.5.1 |
| Bamboo Data Center | 10.2.24, 12.1.12 |
| Crowd Data Center | 6.3.7, 7.0.3, 7.1.7, 7.2.4 |
| Fisheye and Crucible | 4.9.15 |
The CVE record traces the bug back to Jira 7.1.0, Confluence 5.10.0, Bitbucket 4.6.0, Bamboo 7.0.1 and Crowd 2.11.0 (CVE record). Atlassian no longer ships binary patches, so you need a full upgrade.
Check versions over HTTP:
curl -s https://jira.example.com/rest/api/2/serverInfo
curl -s https://confluence.example.com/rest/applinks/1.0/manifest
curl -s https://bitbucket.example.com/rest/api/1.0/application-properties
curl -s https://bamboo.example.com/rest/api/latest/infowatchTowr published a detection artefact generator for Jira, Confluence and Bitbucket in the GitHub repository watchtowrlabs/watchTowr-vs-Atlassian-CVE-2026-21589 (watchTowr).
Search access logs for attempts. Atlassian says to look for .. next to /, \ or ::, either after URL-decoding each line up to twice, or by running its regex over the raw lines. Search the product’s Tomcat access logs and any reverse proxy or load balancer logs in front of it:
grep -P '(?i)(?:/|\\|::|%(?:25)*(?:2f|5c)|(?::|%(?:25)*3a){2})(?:\.|%(?:25)*2e){2}(?:/|\\|::|%(?:25)*(?:2f|5c)|(?::|%(?:25)*3a){2}|;|%(?:25)*3b|$)' access_log*Pay most attention to hits that returned HTTP 200 and that name crowd.properties, web.xml, urlrewrite.xml or other files under WEB-INF.
What to do now
- Upgrade every Data Center product to a fixed build. Start with internet-facing ones and with Bamboo and Bitbucket, which hold build secrets and source code. Atlassian says to take instances off the internet until you can patch or mitigate.
- If you cannot upgrade yet, block the pattern. Atlassian gives three options (Atlassian): - a WAF or proxy rule that blocks URLs matching the regex above (all products); - a Tomcat
RewriteValvein the application<Context>plus arewrite.configinWEB-INFthat returns 403 for the same pattern (Jira, JSM, Confluence, Bamboo, Crowd), applied on every cluster node; - a new first rule in<installation-directory>/app/WEB-INF/urlrewrite.xmlthat returns 404 (Bitbucket, including mirrors and mirror farm nodes). Test that the rule also blocks URL-encoded forms. - Change the Crowd application password used by Jira, Confluence and other apps if the instance was reachable while unpatched.
crowd.propertiesstores it in plain text and watchTowr showed how it leads to Jira admin. Restrict the Crowd REST API to the IP addresses of the applications that use it. - Look for new admin users. Review recent members of
jira-administrators,confluence-administratorsand other admin groups in Crowd and in each product. Look for users created through the Crowd REST API (POST /crowd/rest/usermanagement/1/user) that you cannot explain. - Check other files in the web root for secrets. Atlassian warns that in some configurations sensitive files there “increase your risk”. Anything stored under the application’s
WEB-INFshould be treated as readable by anyone who reached the instance before the fix.
Sources
- Atlassian: CVE-2026-21589 arbitrary file access vulnerability impacts multiple products
- watchTowr Labs: Atlassian pre-auth arbitrary file read (CVE-2026-21589)
- CVE-2026-21589 record
- CISA Known Exploited Vulnerabilities catalog
- Infosecurity Magazine: critical vulnerability in Atlassian products exploited