CVE-2025-43746
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedA reflected cross-site scripting (XSS) vulnerability in the Liferay Portal 7.4.0 through 7.4.3.132, and Liferay DXP 2025.Q2.0 through 2025.Q2.2, 2025.Q1.0 through 2025.Q1.14, 2024.Q4.0 through 2024.Q4.7, 2024.Q3.0 through 2024.Q3.13, 2024.Q2.0 through 2024.Q2.13, 2024.Q1.1 through 2024.Q1.18 and 7.4 GA through update 92 allows a remote authenticated attacker to inject JavaScript code via _com_liferay_dynamic_data_mapping_web_portlet_DDMPortlet_portletNamespace and _com_liferay_dynamic_data_mapping_web_portlet_DDMPortlet_namespace parameter.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceA reflected cross-site scripting (XSS) vulnerability exists in Lifer's Dynamic Data Mapping (DDM) portlet. Authenticated attackers can inject malicious JavaScript via the _com_lifera_dynamic_data_mapping_web_portlet_DDMPortlet_portletNamespace or _com_lifera_dynamic_data_mapping_web_portlet_DDMPortlet_namespace parameters. This occurs because these parameters are not properly sanitized before being reflected in the response, allowing script execution in the context of the victim's browser.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data>= 2024.Q1.1, < 2024.Q1.19>= 2024.q2.0, <= 2024.q2.13>= 2024.Q3.0, <= 2024.Q3.13>= 2024.q4.0, <= 2024.q4.7>= 2025.Q1.0, < 2025.Q1.15>= 2025.Q2.0, < 2025.Q2.3= 7.4>= 7.4.0, <= 7.4.3.132CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- Low
- User interaction
- Required
- Scope
- Changed
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify Lifer Portal or DXP installation versionCheck the product version in the Lifer administration console or examine the liferay-portal.properties / portal-impl.properties file for the version number. On the server, you can also check the LIFERAY_VERSION or portal.version property in the control panel under Server Information.Affected if The installed version falls within any of these ranges: 7.4.0 to 7.4.3.132; 2024.Q1.1 to 2024.Q1.18; 2024.Q2.0 to 2024.Q2.13; 2024.Q3.0 to 2024.Q3.13; 2024.Q4.0 to 2024.Q4.7; 2025.Q1.0 to 2025.Q1.14; or 2025.Q2.0 to 2025.Q2.2
-
Verify Dynamic Data Mapping portlet is deployedLog into the Lifer control panel and navigate to Site Administration > Content & Data > Data Definition, or check the deployed web applications for the dd-portlet or dynamic-data-mapping-web module.Affected if The DDM portlet (dynamic-data-mapping-web) is installed and accessible on the portal
-
Confirm vulnerable parameters are acceptedSubmit a request to any DDM portlet endpoint and inspect whether the _com_lifera_dynamic_data_mapping_web_portlet_DDMPortlet_portletNamespace or _com_lifera_dynamic_data_mapping_web_portlet_DDMPortlet_namespace parameters are reflected in the HTML response without encoding.Affected if These parameters are accepted and their values appear unescaped in the response HTML (view page source to verify)
-
Check for lack of input sanitization in responsesSubmit a test request with a benign payload like <script>alert(1)</script> in either vulnerable parameter and verify whether the script tags are rendered literally in the response rather than being HTML-encoded.Affected if The payload is reflected as-is in the response without being encoded to <script>
You are affected if your Lifer installation version is within the affected ranges AND the DDM portlet is deployed AND the vulnerable parameters reflect unsanitized input in responses.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scoped2024.Q1.192025.Q1.152025.Q2.3
Apply vendor-provided patches or upgrade to the fixed versions (Lifer Portal 7.4.3.133+, DXP 2025.Q2.3+, 2025.Q1.15+, 2024.Q4.8+, 2024.Q3.14+, 2024.Q2.14+, 2024.Q1.19+, or 7.4 GA update 93+). As a compensating control, implement strict Content Security Policy (CSP) headers to mitigate XSS impact until the patch can be applied.
Lifer Portal 7.4.3.133+ or DXP 2024.Q1.19+/2024.Q2.14+/2024.Q3.14+/2024.Q4.8+
- 1. Identify the exact Lifer Portal or DXP version currently deployed using the server administration console or the Gogo shell command: "version"
- 2. For Lifer Portal 7.4.x users: Upgrade to Lifer Portal 7.4.3.133 or later which contains the security fix
- 3. For DXP users on 2024.Q1.x: Upgrade to 2024.Q1.19 or later
- 4. For DXP users on 2024.Q2.x: Upgrade to 2024.Q2.14 or later
- 5. For DXP users on 2024.Q3.x: Upgrade to 2024.Q3.14 or later
- 6. For DXP users on 2024.Q4.x: Upgrade to 2024.Q4.8 or later
- 7. After upgrade, verify the _com_lifera_dynamic_data_mapping_web_portlet_DDMPortlet_portletNamespace and _com_lifera_dynamic_data_mapping_web_portlet_DDMPortlet_namespace parameters are now properly encoded to prevent XSS
- 8. Test the dynamic data mapping portlet functionality to ensure the fix does not break expected behavior
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation3.0 h
- Implementation6.0 h
- Testing3.0 h
- Review / QA2.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $3,984.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2025-43746 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2025-43746 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data