CVE-2025-64840

5.4 MEDIUM

📋 TL;DR

This 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 these 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.

📦 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 on victim systems.

🟠

Likely Case

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

🟢

If Mitigated

Limited impact with proper input validation, output encoding, and Content Security Policy (CSP) headers in place.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Requires authenticated low-privileged access to inject payloads into vulnerable fields.

🛠️ 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 the AEM instance. 4. Verify the update was successful.

🔧 Temporary Workarounds

Input Validation and Output Encoding

all

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

Content Security Policy

all

Implement strict Content Security Policy headers to restrict 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.

🔍 How to Verify

Check if Vulnerable:

Check AEM version via the Welcome screen or OSGi console. If version is 6.5.23 or earlier, the system is vulnerable.

Check Version:

curl -s http://localhost:4502/libs/granite/core/content/login.html | grep 'AEM 6.5'

Verify Fix Applied:

Verify AEM version is 6.5.24 or later and test form fields for XSS vulnerabilities using safe payloads.

📡 Detection & Monitoring

Log Indicators:

  • Unusual form submissions with script tags or JavaScript payloads
  • Multiple failed XSS attempts in request logs

Network Indicators:

  • HTTP requests containing script tags or JavaScript in form parameters
  • Unexpected outbound connections from user browsers

SIEM Query:

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

🔗 References

📤 Share & Export