CVE-2025-64804

5.4 MEDIUM

📋 TL;DR

A stored Cross-Site Scripting (XSS) vulnerability in Adobe Experience Manager allows low-privileged attackers to inject malicious JavaScript into vulnerable form fields. When victims browse pages containing the compromised fields, their browsers execute the attacker's scripts. This affects AEM versions 6.5.23 and earlier.

💻 Affected Systems

Products:
  • Adobe Experience Manager
Versions: 6.5.23 and earlier
Operating Systems: All supported platforms
Default Config Vulnerable: ⚠️ Yes
Notes: Requires low-privileged attacker access to vulnerable form fields; affects both authoring and publishing instances.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal session cookies, perform actions as authenticated users, redirect to malicious sites, or install malware through drive-by downloads.

🟠

Likely Case

Session hijacking, credential theft, defacement of web pages, or data exfiltration from user browsers.

🟢

If Mitigated

Limited impact if input validation and output encoding are properly implemented, though stored XSS remains dangerous.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated low-privileged access; stored XSS is typically easy to weaponize once details are known.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 6.5.24 or later

Vendor Advisory: https://helpx.adobe.com/security/products/experience-manager/apsb25-115.html

Restart Required: Yes

Instructions:

1. Download AEM 6.5.24 or later from Adobe's distribution portal. 2. Apply the service pack following Adobe's upgrade documentation. 3. Restart all AEM instances. 4. Verify the patch is applied by checking the version in the AEM welcome console.

🔧 Temporary Workarounds

Input Validation and Output Encoding

all

Implement strict input validation and proper output encoding for all user-controllable form fields.

Content Security Policy (CSP)

all

Deploy a strict Content Security Policy to mitigate XSS impact by restricting script execution.

🧯 If You Can't Patch

  • Restrict low-privileged user access to vulnerable form fields and components.
  • Implement web application firewall (WAF) rules to block XSS payloads in form submissions.

🔍 How to Verify

Check if Vulnerable:

Check AEM version via the welcome console (http://[host]:[port]/libs/granite/core/content/login.html) or CRXDE Lite; versions 6.5.23 or earlier are vulnerable.

Check Version:

curl -s http://[host]:[port]/libs/granite/core/content/login.html | grep -o 'Experience Manager [0-9.]*'

Verify Fix Applied:

Confirm version is 6.5.24 or later in the AEM welcome console and test form fields for XSS payload acceptance.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to form submission endpoints with script tags or JavaScript payloads in parameters.
  • Error logs showing XSS filter bypass attempts.

Network Indicators:

  • HTTP requests containing <script>, javascript:, or other XSS payloads in form data.

SIEM Query:

source="aem_access.log" AND ("<script" OR "javascript:" OR "onerror=" OR "onload=")

🔗 References

📤 Share & Export