CVE-2025-31748

WordPress Opal Portfolio Plugin <= 1.0.4 - Stored Cross Site Scripting (XSS) vulnerability

Published Apr 1, 2025 CVSS 3.1 · 6.5 Medium EPSS < 1% KEV · Not listed
Description
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in wpopal Opal Portfolio opal-portfolios allows Stored XSS.This issue affects Opal Portfolio: from n/a through <= 1.0.4.

Analysis

AI-generated

Technical impact

The vulnerability is an improper neutralization of input during web page generation, allowing a stored XSS flaw in the Opal Portfolio plugin. An attacker can inject malicious JavaScript that persists in the database and executes whenever the affected content is displayed, potentially compromising user credentials, defacing the site, or redirecting visitors. Based on the description, the injection occurs through user‑supplied data that the plugin stores without proper sanitization. The primary impact is cross‑site scripting that could affect the confidentiality and integrity of user sessions.

Affected Systems

The flaw affects the wpopal Opal Portfolio (opal‑portfolios) plugin for WordPress on all builds from the earliest release through version 1.0.4. The plugin is typically used to display portfolios and media galleries, and any site running a vulnerable version is susceptible.

Risk and Exploitability

The CVSS score of 6.5 indicates a moderate severity. The EPSS score of less than 1% suggests a very low likelihood of exploitation at present, and the flaw is not listed in the CISA KEV catalog. Nonetheless, the attack vector is inferred to be a classic stored XSS that may be triggered by a user creating or editing a portfolio entry or taxonomy. Exploitation would require that the attacker can supply or modify input fields that are rendered later on by the plugin. Given that the flaw allows persistent code execution, administrators should treat it as a serious risk if the site exposes the plugin to untrusted users.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the Opal Portfolio plugin to the latest version (≥1.0.5), which removes the unfiltered input handling.
  • Restrict or disable portfolio entry creation or editing for untrusted or low‑privilege users until the update is applied.
  • Implement a site‑wide content‑security‑policy that blocks inline scripts, mitigating the impact of any XSS payloads.

Generated by OpenCVE AI on May 1, 2026 at 11:55 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
EUVD EUVD EUVD-2025-9266 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in wpopal Opal Portfolio allows Stored XSS. This issue affects Opal Portfolio: from n/a through 1.0.4.
History
Type Values Removed Values Added
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:L'}

Type Values Removed Values Added
Description Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in wpopal Opal Portfolio allows Stored XSS. This issue affects Opal Portfolio: from n/a through 1.0.4. Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in wpopal Opal Portfolio opal-portfolios allows Stored XSS.This issue affects Opal Portfolio: from n/a through <= 1.0.4.
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:L'}

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in wpopal Opal Portfolio allows Stored XSS. This issue affects Opal Portfolio: from n/a through 1.0.4.
Title WordPress Opal Portfolio Plugin <= 1.0.4 - Stored Cross Site Scripting (XSS) vulnerability
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:L'}

Subscriptions

No data.

Weaknesses
  • CWE-79

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

Sources

Status
PUBLISHED
Assigner
Patchstack
Published
Updated
Apr 28, 2026, 4:12 PM
Reserved
Apr 1, 2025, 1:19 PM
Status
Deferred
Published
Apr 1, 2025, 3:16 PM
Modified
Jun 17, 2026, 9:10 AM