CVE-2025-46940 Overview
CVE-2025-46940 is a stored Cross-Site Scripting (XSS) vulnerability [CWE-79] affecting Adobe Experience Manager (AEM) versions 6.5.22 and earlier. A low-privileged attacker can inject malicious JavaScript into vulnerable form fields. The injected script executes in a victim's browser when they load the page containing the tainted field. Exploitation requires authenticated access and user interaction, but the impact crosses a security boundary (scope change), enabling attackers to hijack sessions, steal authentication tokens, or perform actions on behalf of the victim within the AEM authoring environment.
Critical Impact
Authenticated attackers can persistently inject JavaScript into AEM form fields, executing arbitrary script in the browser of any user who views the affected page.
Affected Products
- Adobe Experience Manager 6.5.22 and earlier (on-premises)
- Adobe Experience Manager Cloud Service
- Adobe Experience Manager Forms component
Discovery Timeline
- 2025-06-10 - CVE-2025-46940 published to the National Vulnerability Database
- 2025-06-10 - Adobe publishes security bulletin APSB25-48
- 2026-06-17 - Last updated in NVD database
Technical Details for CVE-2025-46940
Vulnerability Analysis
The vulnerability is a stored (persistent) Cross-Site Scripting flaw in Adobe Experience Manager. Unlike reflected XSS, the injected payload is written to server-side storage and later served to any user who renders the affected component. The vulnerability requires low-privileged authentication, meaning any user with permission to submit or edit form field content can plant a payload. When a victim, potentially a higher-privileged administrator or content author, browses to the page containing the vulnerable field, the malicious script executes under the origin of the AEM application.
Because AEM is commonly deployed for enterprise content authoring and public web delivery, exploitation can pivot from a low-privileged contributor account to full compromise of authoring sessions. The scope-change indicator reflects that the injected payload affects users beyond the account that submitted it.
Root Cause
The root cause is improper neutralization of user-supplied input in form field handling. AEM fails to sanitize or contextually encode HTML and JavaScript characters before storing input and rendering it back to the DOM. The affected components accept attacker-controlled markup that survives storage and serialization, allowing <script> tags or event-handler attributes to execute when the page is rendered.
Attack Vector
An authenticated attacker with content submission privileges crafts a payload containing JavaScript within a vulnerable form field. The payload is persisted in the AEM repository. When another user, typically an authenticated author or administrator, navigates to the page that renders the field, the browser parses and executes the injected script. Consequences include session token theft, forced actions via CSRF-like abuse, credential harvesting through injected forms, and lateral movement into the AEM management interface.
See the Adobe Security Advisory APSB25-48 for vendor technical details. No public proof-of-concept exploit is available at the time of publication.
Detection Methods for CVE-2025-46940
Indicators of Compromise
- Form field content in the AEM repository containing HTML tags such as <script>, <img onerror=...>, <svg onload=...>, or javascript: URIs.
- Unexpected outbound HTTP requests from authoring users' browsers to attacker-controlled domains shortly after loading AEM pages.
- Anomalous authentication token or session cookie exfiltration originating from AEM author or publish instances.
Detection Strategies
- Query the JCR (Java Content Repository) for stored properties containing script tags, event handlers, or encoded JavaScript payloads.
- Review AEM access logs for POST requests submitting form data with suspicious payload patterns from low-privileged accounts.
- Deploy a Content Security Policy (CSP) with report-only mode to surface inline script executions that violate policy.
Monitoring Recommendations
- Monitor AEM user activity for privilege escalation or configuration changes made shortly after an author account loads content submitted by lower-privileged users.
- Alert on browser telemetry indicating script execution from AEM origins to unexpected external domains.
- Correlate web application firewall (WAF) logs with AEM audit logs to identify submission of payloads matching XSS signatures.
How to Mitigate CVE-2025-46940
Immediate Actions Required
- Upgrade Adobe Experience Manager on-premises deployments to version 6.5.23 (Service Pack 23) or later as specified in APSB25-48.
- Verify AEM Cloud Service instances are running the current release; Adobe manages patching for AEM as a Cloud Service.
- Audit low-privileged AEM accounts and review form field content stored in the JCR for injected script payloads.
Patch Information
Adobe addresses CVE-2025-46940 in the June 2025 AEM security update. On-premises customers should apply Adobe Experience Manager 6.5 Service Pack 23. AEM as a Cloud Service customers receive the fix through the current release channel. Refer to Adobe Security Bulletin APSB25-48 for full remediation guidance and package downloads.
Workarounds
- Restrict content submission privileges to trusted users until the patch is applied.
- Enforce a strict Content Security Policy (CSP) that disallows inline scripts and untrusted script sources on AEM-delivered pages.
- Deploy a web application firewall (WAF) rule set to block requests containing common XSS payload patterns targeting AEM form endpoints.
- Enable and review AEM audit logging for form submission activity by low-privileged accounts.
# Example CSP header to mitigate stored XSS execution on AEM pages
Content-Security-Policy: default-src 'self'; script-src 'self' 'nonce-{RANDOM}'; object-src 'none'; base-uri 'self'; frame-ancestors 'self'
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

