
Atlassian Rovo AI vulnerability: a zero-click data leak
PromptArmor reports that Atlassian Rovo can be made to send out Jira and Confluence data without the user approving anything. Rovo is Atlassian's multi-purpose AI agent, and it works across products such as Jira and Confluence. The report calls the weakness zero-click, which means no person has to confirm a step for the data to leave.
The method is indirect prompt injection. A command is hidden inside material the AI is asked to read, and the AI follows it as if the user had typed it. The report says the data can come from anywhere in the tenant (the workspace tied to one customer account) and names Jira tickets and Confluence documents.
The tool at fault is Rovo's URL retrieval tool. The report says it has no protection against opening a web address that the agent itself builds on the fly. In the demonstration, the attacker's server logs end up holding the stolen Jira tickets and Confluence documents.
Atlassian AI ‘Rovo’ is susceptible to zero-click data exfiltration via indirect prompt injection, bypassing organization-level web search controls. / Atlassian’s Rovo AI is a multi-purpose agent that operates across Atlassian’s product suite (Jira, Confluence, etc.). / Vulnerabilities have been identified that enable data exfiltration across an Atlassian tenant (Jira tickets, Confluence docs, etc.) via indirect prompt injection. This attack executes without requiring any human-in-the-loop approval, and succeeds by exploiting Rovo's URL retrieval tool. / Rovo's URL retrieval tool is insecure: there are no protections against opening a URL that has been dynamically created by the agent — From the passages on the nature of the vulnerability, the products in scope, the data that can leak, the absence of an approval step and the lack of protection on the toolView official source →
Rovo AI security gap: web search off, data still leaks
The attack succeeds even when an administrator switches off web search for the whole organization. The report says the setting does not remove the tool that opens the search results.
If a file carries a hidden command, the admin's switch changes nothing, since the tool that sends the data out is still there. The report includes a screenshot of the organization-wide "Enable web search" setting toggled off while the attack goes through.
The attack also leaves nothing for the user to notice. When the user returns to the chat later, the screen shows the ticket updates the agent suggested and no sign of the attack, and the report says all evidence is gone.
This attack succeeds even if an organization has disabled web search for Rovo. This is because the web search setting fails to remove the tool for opening the search results. / The organization-wide 'Enable web search' setting for Rovo is toggled off. If the user returns to the chat later, they see the agent's suggested ticket updates, but no evidence of the attack. / If the user later reopens the chat, all evidence is gone and output appears normal. — From the passages on why the web search setting does not block the tool, the configuration shown in the demonstration, and the absence of traces afterwardsView official source →
Prompt injection reaches Rovo agents by more than one route
In the demonstration, the hidden command arrives in a file. The report says it is quite common for a user to find a file online and upload it to Rovo. It also states that the attack does not depend on where the injected text comes from, and names these other sources:
- External data inside Atlassian, such as support tickets
- Web data, if search is enabled
- Third-party connectors, the integration feature through which Rovo reads data from outside services
For a Rovo agent, then, "do not upload strange files" covers only one of several routes. Text written by outsiders can reach the agent through tickets and connected services as well.
The report also describes a second, separate way to get data out. Rovo renders Markdown images from AI output, and the report calls insecure Markdown image rendering a well-known vector for data exfiltration through indirect prompt injection.
For general use cases, this is quite common: a user finds a file online and uploads it to Rovo. This attack is not dependent on the injection source - other injection sources include, but are not limited to: external data in Atlassian (e.g., support tickets), web data (if search is enabled), third-party ‘connectors’, etc. / Atlassian Rovo also renders Markdown images from AI outputs. Insecure Markdown image rendering is a well-known vector for data exfiltration via indirect prompt injection. — From the passages on how common the demonstrated route is, the other injection sources named, and Markdown image rendering as a separate vectorView official source →
Rovo AI vulnerability disclosure: no fix after two months
PromptArmor says it reported the vulnerabilities to Atlassian on May 23. Atlassian assigned a case number and expressed thanks. After that, PromptArmor says, it followed up several times over more than two months and received no further communication from Atlassian.
PromptArmor states that Rovo remains vulnerable and gives that as its reason for publishing: to inform users of the risks. This timeline is PromptArmor's account alone, and the only Atlassian response it records is the case number and thanks. For a team running Rovo, the practical point is narrow: when PromptArmor published, it described no Atlassian patch that an admin could check for.
PromptArmor disclosed the vulnerabilities covered in this article to Atlassian on May 23rd. Atlassian assigned a case number and expressed thanks, but after multiple follow-ups by PromptArmor over more than two months, Atlassian has made no further communication, and Rovo remains vulnerable. As such, we are publishing to inform users of the risks. — From the passage on the disclosure date, Atlassian's first response, what followed, and the reason for publishingView official source →
Prompt injection reports on Rovo agents: zero-click vs one-click
The attack is zero-click: PromptArmor's own report says it runs with no human-in-the-loop approval. Searches for an Atlassian Rovo vulnerability turn up more than one write-up, and some use different names and describe the trigger as a single click. A reader comparing them should not treat the one-click and zero-click descriptions as the same finding until each report's own text says so.
When you read any account of this issue, check two things in its own wording: whether a person has to click or approve anything for the data to leave, and whether the account says Atlassian has fixed the problem. PromptArmor's answers are no approval needed and no fix.
Atlassian AI ‘Rovo’ is susceptible to zero-click data exfiltration via indirect prompt injection, bypassing organization-level web search controls. / This attack executes without requiring any human-in-the-loop approval, and succeeds by exploiting Rovo's URL retrieval tool. — From the passages on the zero-click description and the absence of an approval stepView official source →
Rovo security: check connectors, Jira and Confluence access
The report ties the damage to what Rovo can read. It states that the injected command can take any data the agent can access in Atlassian, including data the agent reaches through connectors. For an admin, the report supports three points:
- The data at risk equals the data Rovo can reach in Jira, Confluence and any connected service.
- The web search switch is not a control against this attack, according to the report.
- The report names no Atlassian fix to apply, so there is no patch step to follow.
Two related pieces on this site are UK AISI Incident: 19 Unsanctioned AI Agent Actions and Cloudflare OS: An Open-Source AI Agent Platform. The first is about an incident involving unsanctioned AI agent actions, the second about an open-source AI agent platform.
The prompt injection can exfiltrate any data the agent can access in Atlassian, including any data the agent can access via ‘connectors’. / The attacker's server logs contain the exfiltrated Jira tickets and Confluence documents. — From the passages stating that the data at risk matches the agent's own access, and what the attacker's logs containedView official source →
FAQ
- Does a user have to click anything to be affected?
- The report calls it zero-click: the attack runs without any human-in-the-loop approval and works by exploiting Rovo's URL retrieval tool.
- Can an admin prevent it by turning off web search?
- No, according to the report. Turning the setting off does not remove the tool that opens search results. PromptArmor states that the attack succeeded with the organization-wide web search setting disabled.
- Has Atlassian fixed it?
- Not as of the report. PromptArmor disclosed the vulnerabilities to Atlassian on May 23. Atlassian assigned a case number and expressed thanks, but after multiple follow-ups over more than two months there was no further communication and Rovo remains vulnerable. PromptArmor gives this as its reason for publishing.
- What data could leak?
- The report states that any data the agent can access in Atlassian, including data reachable through connectors, is in scope. In the demonstration, Jira tickets and Confluence documents were recorded in the attacker's server logs.



