CVE-2025-62267

6.1 MEDIUM

📋 TL;DR

This CVE describes multiple cross-site scripting (XSS) vulnerabilities in Liferay Portal and DXP that allow remote attackers to inject malicious scripts or HTML into user profile fields. Attackers can execute arbitrary code in victims' browsers when they view compromised user profiles. Affected users include anyone running vulnerable versions of Liferay Portal 7.4.3.35-7.4.3.111 or Liferay DXP 2023.Q4.0-2023.Q4.10, 2023.Q3.1-2023.Q3.10, or 7.4 update 35-92.

💻 Affected Systems

Products:
  • Liferay Portal
  • Liferay DXP
Versions: Liferay Portal 7.4.3.35 through 7.4.3.111; Liferay DXP 2023.Q4.0 through 2023.Q4.10, 2023.Q3.1 through 2023.Q3.10, 7.4 update 35 through update 92
Operating Systems: All platforms running Liferay
Default Config Vulnerable: ⚠️ Yes
Notes: Vulnerability exists in the web content template's select structure page when users edit their profile information.

📦 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 user systems.

🟠

Likely Case

Session hijacking, credential theft, defacement of user profiles, or phishing attacks against other users.

🟢

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: MEDIUM

Requires user interaction (viewing a malicious user profile) and some social engineering to be effective.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Liferay Portal 7.4.3.112+, Liferay DXP 2023.Q4.11+, 2023.Q3.11+, 7.4 update 93+

Vendor Advisory: https://liferay.dev/portal/security/known-vulnerabilities/-/asset_publisher/jekt/content/CVE-2025-62267

Restart Required: No

Instructions:

1. Download the latest patch from Liferay's customer portal. 2. Apply the patch according to Liferay's patching documentation. 3. Verify the fix by testing user profile fields for XSS vulnerabilities.

🔧 Temporary Workarounds

Input Validation and Sanitization

all

Implement server-side validation and sanitization of user input in First Name, Middle Name, and Last Name fields.

Content Security Policy (CSP)

all

Implement strict CSP headers to prevent execution of injected scripts.

🧯 If You Can't Patch

  • Disable user profile editing functionality for non-administrative users
  • Implement web application firewall (WAF) rules to block XSS payloads in user input fields

🔍 How to Verify

Check if Vulnerable:

Test by attempting to inject XSS payloads into First Name, Middle Name, or Last Name fields and checking if they execute when viewing the user profile.

Check Version:

Check Liferay version in Control Panel → Configuration → Server Administration → System Information

Verify Fix Applied:

After patching, attempt the same XSS payloads and verify they are properly sanitized or blocked.

📡 Detection & Monitoring

Log Indicators:

  • Unusual script tags or JavaScript in user profile fields
  • Multiple failed XSS attempts in web server logs

Network Indicators:

  • Suspicious characters or patterns in HTTP POST requests to user profile endpoints

SIEM Query:

source="web_server_logs" AND (uri_path="/api/jsonws/user/update-user" OR uri_path="/web/guest/home") AND (http_method="POST" OR http_method="PUT") AND (request_body CONTAINS "<script>" OR request_body CONTAINS "javascript:")

🔗 References

📤 Share & Export