Vulnerability Database

383,371

Total vulnerabilities in the database

CVE-2022-28978 — liferay / liferay_portal

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Stored cross-site scripting (XSS) vulnerability in the Site module's user membership administration page in Liferay Portal 7.0.1 through 7.4.1, and Liferay DXP 7.0 before fix pack 102, 7.1 before fix pack 26, 7.2 before fix pack 15, and 7.3 before service pack 3 allows remote attackers to inject arbitrary web script or HTML via the a user's name.

CVSS v3:

  • Severity: Medium
  • Score: 5.4
  • AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Software Affected versions
liferay / liferay_portal >= 7.0.1, < 7.4.2
Maven icon com.liferay / com.liferay.site.memberships.web < 5.0.10
Maven icon com.liferay.portal / release.dxp.bom >= 7.0.0, < 7.0.10.fp102
Maven icon com.liferay.portal / release.dxp.bom >= 7.1.0, < 7.1.10.fp26
Maven icon com.liferay.portal / release.dxp.bom >= 7.2.0, < 7.2.10.fp15
liferay / digital_experience_platform = 7.0
liferay / digital_experience_platform = 7.0-fix_pack_100
liferay / digital_experience_platform = 7.0-fix_pack_101
liferay / digital_experience_platform = 7.0-fix_pack_13
liferay / digital_experience_platform = 7.0-fix_pack_14
liferay / digital_experience_platform = 7.0-fix_pack_24
liferay / digital_experience_platform = 7.0-fix_pack_25
liferay / digital_experience_platform = 7.0-fix_pack_26
liferay / digital_experience_platform = 7.0-fix_pack_27
liferay / digital_experience_platform = 7.0-fix_pack_28
liferay / digital_experience_platform = 7.0-fix_pack_30
liferay / digital_experience_platform = 7.0-fix_pack_33
liferay / digital_experience_platform = 7.0-fix_pack_35
liferay / digital_experience_platform = 7.0-fix_pack_36
liferay / digital_experience_platform = 7.0-fix_pack_39
liferay / digital_experience_platform = 7.0-fix_pack_40
liferay / digital_experience_platform = 7.0-fix_pack_41
liferay / digital_experience_platform = 7.0-fix_pack_42
liferay / digital_experience_platform = 7.0-fix_pack_43
liferay / digital_experience_platform = 7.0-fix_pack_44
liferay / digital_experience_platform = 7.0-fix_pack_45
liferay / digital_experience_platform = 7.0-fix_pack_46
liferay / digital_experience_platform = 7.0-fix_pack_47
liferay / digital_experience_platform = 7.0-fix_pack_48
liferay / digital_experience_platform = 7.0-fix_pack_49
liferay / digital_experience_platform = 7.0-fix_pack_50
liferay / digital_experience_platform = 7.0-fix_pack_51
liferay / digital_experience_platform = 7.0-fix_pack_52
liferay / digital_experience_platform = 7.0-fix_pack_53
liferay / digital_experience_platform = 7.0-fix_pack_54
liferay / digital_experience_platform = 7.0-fix_pack_56
liferay / digital_experience_platform = 7.0-fix_pack_57
liferay / digital_experience_platform = 7.0-fix_pack_58
liferay / digital_experience_platform = 7.0-fix_pack_59
liferay / digital_experience_platform = 7.0-fix_pack_60
liferay / digital_experience_platform = 7.0-fix_pack_61
liferay / digital_experience_platform = 7.0-fix_pack_64
liferay / digital_experience_platform = 7.0-fix_pack_65
liferay / digital_experience_platform = 7.0-fix_pack_66
liferay / digital_experience_platform = 7.0-fix_pack_67
liferay / digital_experience_platform = 7.0-fix_pack_68
liferay / digital_experience_platform = 7.0-fix_pack_69
liferay / digital_experience_platform = 7.0-fix_pack_70
liferay / digital_experience_platform = 7.0-fix_pack_71
liferay / digital_experience_platform = 7.0-fix_pack_72
liferay / digital_experience_platform = 7.0-fix_pack_73
liferay / digital_experience_platform = 7.0-fix_pack_75
liferay / digital_experience_platform = 7.0-fix_pack_76
liferay / digital_experience_platform = 7.0-fix_pack_78
liferay / digital_experience_platform = 7.0-fix_pack_79
liferay / digital_experience_platform = 7.0-fix_pack_80
liferay / digital_experience_platform = 7.0-fix_pack_81
liferay / digital_experience_platform = 7.0-fix_pack_82
liferay / digital_experience_platform = 7.0-fix_pack_83
liferay / digital_experience_platform = 7.0-fix_pack_84
liferay / digital_experience_platform = 7.0-fix_pack_85
liferay / digital_experience_platform = 7.0-fix_pack_86
liferay / digital_experience_platform = 7.0-fix_pack_87
liferay / digital_experience_platform = 7.0-fix_pack_88
liferay / digital_experience_platform = 7.0-fix_pack_89
liferay / digital_experience_platform = 7.0-fix_pack_90
liferay / digital_experience_platform = 7.0-fix_pack_91
liferay / digital_experience_platform = 7.0-fix_pack_92
liferay / digital_experience_platform = 7.0-fix_pack_93
liferay / digital_experience_platform = 7.0-fix_pack_94
liferay / digital_experience_platform = 7.0-fix_pack_95
liferay / digital_experience_platform = 7.0-fix_pack_96
liferay / digital_experience_platform = 7.0-fix_pack_97
liferay / digital_experience_platform = 7.0-fix_pack_98
liferay / digital_experience_platform = 7.0-fix_pack_99
liferay / digital_experience_platform = 7.1
liferay / digital_experience_platform = 7.1-fix_pack_1
liferay / digital_experience_platform = 7.1-fix_pack_10
liferay / digital_experience_platform = 7.1-fix_pack_11
liferay / digital_experience_platform = 7.1-fix_pack_12
liferay / digital_experience_platform = 7.1-fix_pack_13
liferay / digital_experience_platform = 7.1-fix_pack_14
liferay / digital_experience_platform = 7.1-fix_pack_15
liferay / digital_experience_platform = 7.1-fix_pack_16
liferay / digital_experience_platform = 7.1-fix_pack_17
liferay / digital_experience_platform = 7.1-fix_pack_18
liferay / digital_experience_platform = 7.1-fix_pack_19
liferay / digital_experience_platform = 7.1-fix_pack_2
liferay / digital_experience_platform = 7.1-fix_pack_20
liferay / digital_experience_platform = 7.1-fix_pack_21
liferay / digital_experience_platform = 7.1-fix_pack_22
liferay / digital_experience_platform = 7.1-fix_pack_23
liferay / digital_experience_platform = 7.1-fix_pack_24
liferay / digital_experience_platform = 7.1-fix_pack_25
liferay / digital_experience_platform = 7.1-fix_pack_3
liferay / digital_experience_platform = 7.1-fix_pack_4
liferay / digital_experience_platform = 7.1-fix_pack_5
liferay / digital_experience_platform = 7.1-fix_pack_6
liferay / digital_experience_platform = 7.1-fix_pack_7
liferay / digital_experience_platform = 7.1-fix_pack_8
liferay / digital_experience_platform = 7.1-fix_pack_9
liferay / digital_experience_platform = 7.2
liferay / digital_experience_platform = 7.2-fix_pack_1
liferay / digital_experience_platform = 7.2-fix_pack_10
liferay / digital_experience_platform = 7.2-fix_pack_11
liferay / digital_experience_platform = 7.2-fix_pack_12
liferay / digital_experience_platform = 7.2-fix_pack_13
liferay / digital_experience_platform = 7.2-fix_pack_14
liferay / digital_experience_platform = 7.2-fix_pack_2
liferay / digital_experience_platform = 7.2-fix_pack_3
liferay / digital_experience_platform = 7.2-fix_pack_4
liferay / digital_experience_platform = 7.2-fix_pack_5
liferay / digital_experience_platform = 7.2-fix_pack_6
liferay / digital_experience_platform = 7.2-fix_pack_7
liferay / digital_experience_platform = 7.2-fix_pack_8
liferay / digital_experience_platform = 7.2-fix_pack_9
liferay / dxp = 7.3
liferay / dxp = 7.3-sp1
liferay / dxp = 7.3-sp2
liferay / dxp = 7.3-sp3

Frequently Asked Questions

A security vulnerability is a weakness in software, hardware, or configuration that can be exploited to compromise confidentiality, integrity, or availability. Many vulnerabilities are tracked as CVEs (Common Vulnerabilities and Exposures), which provide a standardized identifier so teams can coordinate patching, mitigation, and risk assessment across tools and vendors.

CVSS (Common Vulnerability Scoring System) estimates technical severity, but it doesn't automatically equal business risk. Prioritize using context like internet exposure, affected asset criticality, known exploitation (proof-of-concept or in-the-wild), and whether compensating controls exist. A "Medium" CVSS on an exposed, production system can be more urgent than a "Critical" on an isolated, non-production host.

A vulnerability is the underlying weakness. An exploit is the method or code used to take advantage of it. A zero-day is a vulnerability that is unknown to the vendor or has no publicly available fix when attackers begin using it. In practice, risk increases sharply when exploitation becomes reliable or widespread.

Recurring findings usually come from incomplete Asset Discovery, inconsistent patch management, inherited images, and configuration drift. In modern environments, you also need to watch the software supply chain: dependencies, containers, build pipelines, and third-party services can reintroduce the same weakness even after you patch a single host. Unknown or unmanaged assets (often called Shadow IT) are a common reason the same issues resurface.

Use a simple, repeatable triage model: focus first on externally exposed assets, high-value systems (identity, VPN, email, production), vulnerabilities with known exploits, and issues that enable remote code execution or privilege escalation. Then enforce patch SLAs and track progress using consistent metrics so remediation is steady, not reactive.

SynScan combines attack surface monitoring and continuous security auditing to keep your inventory current, flag high-impact vulnerabilities early, and help you turn raw findings into a practical remediation plan.