Atlassian Confluence Zero-Day: What Cloudflare Saw
On June 2, 2022, Atlassian disclosed a remote code execution (RCE) vulnerability affecting Confluence Server and Confluence Data Center. Cloudflare's security and WAF teams responded immediately, deploying initial mitigation rules for all customers within hours of the advisory. Internal reviews of Cloudflare's own Confluence instances found no signs of compromise.
Vulnerability Impact and Exploitation
According to Volexity's analysis, the flaw allows full unauthenticated RCE, effectively giving an attacker complete control over the target application. Observed attacks use command injection with specially crafted strings to load malicious classes in memory, followed by the deployment of webshells for persistent access.
Post-exploitation activity seen in the wild includes the implantation of:
- Behinder, a known malicious tool
- noop.jsp, a custom webshell that overwrites the legitimate file at
<Confluence root>/confluence/noop.jsp - Chopper, an open-source webshell
Attack Timeline and Observations
Cloudflare's review of WAF data identified requests matching potentially malicious payloads as early as May 26, 2022 at 00:33 UTC — roughly a week before the public advisory. This suggests that some attackers had prior knowledge of the exploit.
After Cloudflare's mitigation rules went live, a large spike in activity began on June 3 at 10:30 UTC, just over ten hours after deployment. This surge aligns with public release of proof-of-concept code and widespread awareness of the vulnerability. Attackers were actively scanning for vulnerable applications at the time of writing.

Cloudflare observed that many payloads matching the initial WAF rules after the advisory were invalid against this specific vulnerability. This suggests that scanning tools were being used to probe for attack vectors, and that precise exploitation knowledge was likely held by a limited set of actors. The subsequent decline in rule matches after June 3 at 23:00 UTC reflects the release of improved WAF rules that significantly reduced false positives.
A valid malicious URL targeting a vulnerable Confluence application appears below, where $HOSTNAME is the target application's host:

This URL executes the contents of the HTTP POST body, eval(#parameters.data[0]). In practice, this is typically a script that downloads a webshell to the server, enabling the attacker to run arbitrary commands on demand.
Other observed example URLs, omitting schema and hostname, include:

Some observed activity points to malware campaigns and botnet behavior. Due to the payload structure, other WAF rules — specifically PHP100011 and PLONE0002 — have also proven effective at mitigating certain attack variations.
Cloudflare's Internal Response
Cloudflare applies a defense-in-depth strategy, using its own products to protect its infrastructure. Given the security controls in place, there was high confidence that the vulnerability did not impact internal systems — a finding confirmed through comprehensive sweeps of internal assets and logs.
The key actions taken included:
- Collecting intelligence about the attack.
- Engaging the WAF team to develop mitigation rules.
- Searching all logs for compromise indicators.
- Reviewing internal Confluence logs for exploit attempts, using Atlassian's pattern strings of "
${" as a filter. - Investigating any matches to determine whether they were genuine exploits (none were found).
- Deploying WAF rules to all servers once quality was confirmed, protecting both customers and internal systems.
- Inspecting Confluence servers for malicious implants — no signs of compromise were detected.
- Adding detection rules to SIEM and monitoring systems for future exploitation attempts.
How Cloudflare Uses Confluence
Confluence serves as Cloudflare's primary internal wiki, used widely across teams for knowledge sharing. All internal instances are protected by Cloudflare Access, which requires every request to be authenticated and validated against Access policies. No unauthenticated requests reach Confluence servers, significantly reducing the risk of external exploitation attempts.
Recommendations for On-Premises Confluence Users
Atlassian customers running on-premises products should patch to the latest fixed versions immediately. Cloudflare additionally advises:
- Deploy Cloudflare Access as an extra authentication layer in front of your applications.
- Enable a WAF with coverage for CVE-2022-26134 in front of Confluence instances.
- Review Confluence logs for signs of exploitation, searching for requests containing both
/wiki/and${. - Use forensic tools to check for webshells or other post-exploitation indicators.
Indicators of Compromise and Attack
The following indicators relate to activity observed by Cloudflare in the wild. Searching logs for these can help determine if an environment has been compromised.
Indicators of Compromise (IOC)
# | Type | Value | Filename/Hash |
|---|---|---|---|
|
| 50f4595d90173fbe8b85bd78a460375d8d5a869f1fef190f72ef993c73534276 | Filename: 45.64.json |
|
| b85c16a7a0826edbcddbd2c17078472169f8d9ecaa7209a2d3976264eb3da0cc | Filename: 45.64.rar |
|
| 90e3331f6dd780979d22f5eb339dadde3d9bcf51d8cb6bfdc40c43d147ecdc8c | Filename: 45.640.txt |
4 | File | 1905fc63a9490533dc4f854d47c7cb317a5f485218173892eafa31d7864e2043 | Filename: 45.647.txt |
5 | File | 5add63588480287d1aee01e8dd267340426df322fe7a33129d588415fd6551fc | Filename: lan (perl script) |
6 | File | 67c2bae1d5df19f5f1ac07f76adbb63d5163ec2564c4a8310e78bcb77d25c988 | Filename: jui.sh |
7 | File | 281a348223a517c9ca13f34a4454a6fdf835b9cb13d0eb3ce25a76097acbe3fb | Filename: conf |
Indicators of Attack (IOA)
# | Type | Value | Description |
|---|---|---|---|
1 | URL String | ${ | String used to craft malicious payload |
2 | URL String | javax.script.ScriptEngineManager | String indicative of ScriptEngine manager to craft malicious payloads |



