Miggo Logo

CVE-2025-43736: Liferay Portal and Liferay DXP have a Denial Of Service via File Upload (DOS) vulnerability

N/A

CVSS Score

Basic Information

EPSS Score
0.11602%
Published
8/12/2025
Updated
8/12/2025
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
-
Package NameEcosystemVulnerable VersionsFirst Patched Version
com.liferay.portal:release.portal.bommaven>= 7.4.3.0, <= 7.4.3.132
com.liferay.portal:release.dxp.bommaven>= 2025.Q1.0, <= 2025.Q1.82025.Q1.9
com.liferay.portal:release.dxp.bommaven>= 2024.Q4.0, <= 2024.Q4.7
com.liferay.portal:release.dxp.bommaven>= 2024.Q3.0, <= 2024.Q3.13
com.liferay.portal:release.dxp.bommaven>= 2024.Q2.0, <= 2024.Q2.13
com.liferay.portal:release.dxp.bommaven>= 2024.Q1.0, <= 2024.Q1.162024.Q1.17
com.liferay.portal:release.dxp.bommaven<= 7.4.13.u92
com.liferay:com.liferay.frontend.taglibmaven< 13.10.013.10.0
com.liferay:com.liferay.image.uploader.webmaven< 5.0.565.0.56
com.liferay:com.liferay.users.admin.webmaven< 11.0.2711.0.27
com.liferay:com.liferay.account.admin.webmaven< 2.0.1382.0.138

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The analysis of the security vulnerability indicates a flaw in the file upload size validation process within Liferay Portal. The vulnerability, as described, allows a user to upload a profile picture exceeding the 300kb limit, potentially causing a Denial of Service. The provided commit ab8932bee29df7df377c468f662d55e624d9390d directly addresses this issue. The core of the vulnerability is located in the com.liferay.image.uploader.web.internal.util.UploadImageUtil.getMaxFileSize method. Before the patch, this method determined the maximum file size based on the currentLogoURL parameter, which was an unreliable way to identify the type of upload. An attacker could bypass this check, leading to the upload of a large file. The patch rectifies this by introducing a new type parameter in the request. This parameter is explicitly set in the user interface (JSP files) when a user is uploading a profile or organization picture. The getMaxFileSize method was updated to check for this type parameter, making the validation logic more robust and directly tied to the upload context. Therefore, the getMaxFileSize function is the primary vulnerable function, as it contained the flawed logic that was exploited.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

* **ni*l O* S*rvi** vi* *il* Uplo** (*OS) vuln*r**ility in Li**r*y Port*l *.*.*.* t*rou** *.*.*.***, Li**r*y *XP ****.Q*.* t*rou** ****.Q*.*, ****.Q*.* t*rou** ****.Q*.*, ****.Q*.* t*rou** ****.Q*.**, ****.Q*.* t*rou** ****.Q*.**, ****.Q*.* t*rou** *

Reasoning

T** *n*lysis o* t** s**urity vuln*r**ility in*i**t*s * *l*w in t** *il* uplo** siz* v*li**tion pro**ss wit*in Li**r*y Port*l. T** vuln*r**ility, *s **s*ri***, *llows * us*r to uplo** * pro*il* pi*tur* *x****in* t** ***k* limit, pot*nti*lly **usin* *