Description
The WordPress Portfolio Builder – Portfolio Gallery plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the plugin's 'pfhub_portfolio' and 'pfhub_portfolio_portfolio' shortcodes in all versions up to, and including, 1.1.7 due to insufficient input sanitization and output escaping on user supplied attributes. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
Published: 2025-02-28
Score: 6.4 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Stored Cross‑Site Scripting
Action: Patch Now
AI Analysis

Impact

The vulnerability resides in the WordPress Portfolio Builder – Portfolio Gallery plugin, which fails to sanitize user supplied attributes for the 'pfhub_portfolio' and 'pfhub_portfolio_portfolio' shortcodes. An authenticated user with contributor‑level access or higher can embed malicious scripts into stored content. The injected code is executed in a victim’s browser whenever the affected page is loaded, enabling session hijacking, cookie theft, defacement or other client‑side attacks typical of Cross‑Site Scripting (CWE‑79).

Affected Systems

The affected product is PortfolioHub WordPress Portfolio Builder – Portfolio Gallery, versions up to and including 1.1.7. Any installation of these versions that allows contributor‑level users to publish or edit content is vulnerable.

Risk and Exploitability

The CVSS score of 6.4 indicates a medium‑to‑high severity, but the EPSS score of less than 1% shows the likelihood of exploitation is low at present. The issue is not listed in the CISA KEV catalog. A necessary prerequisite is authentication as a user with contributor or higher privileges. The attack vector is inbound on the WordPress site; an attacker can inject a malicious payload through the shortcode attributes which is then rendered for all users visiting the page. The lack of input validation and output escaping creates a persistent XSS vector that can be exploited if the user’s role permits shortcode use.

Generated by OpenCVE AI on April 21, 2026 at 22:13 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update or upgrade the plugin to a version newer than 1.1.7 that has proper input sanitization.
  • Restrict contributor and lower roles from adding or editing shortcodes that accept user‑controlled attributes, or disable the affected shortcodes for such roles.
  • Implement a site‑wide Content Security Policy and/or a reputable web application firewall that blocks or sanitizes injected JavaScript before it reaches end users.

Generated by OpenCVE AI on April 21, 2026 at 22:13 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
EUVD EUVD EUVD-2025-5479 The WordPress Portfolio Builder – Portfolio Gallery plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the plugin's 'pfhub_portfolio' and 'pfhub_portfolio_portfolio' shortcodes in all versions up to, and including, 1.1.7 due to insufficient input sanitization and output escaping on user supplied attributes. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
History

Thu, 06 Mar 2025 20:45:00 +0000

Type Values Removed Values Added
First Time appeared Portfoliohub
Portfoliohub portfoliohub
CPEs cpe:2.3:a:portfoliohub:portfoliohub:*:*:*:*:*:wordpress:*:*
Vendors & Products Portfoliohub
Portfoliohub portfoliohub

Tue, 04 Mar 2025 03:45:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Fri, 28 Feb 2025 04:45:00 +0000

Type Values Removed Values Added
Description The WordPress Portfolio Builder – Portfolio Gallery plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the plugin's 'pfhub_portfolio' and 'pfhub_portfolio_portfolio' shortcodes in all versions up to, and including, 1.1.7 due to insufficient input sanitization and output escaping on user supplied attributes. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
Title WordPress Portfolio Builder – Portfolio Gallery <= 1.1.7 - Authenticated (Contributor+) Stored Cross-Site Scripting via Shortcode
Weaknesses CWE-79
References
Metrics cvssV3_1

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


Subscriptions

Portfoliohub Portfoliohub
cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-04-08T16:46:12.155Z

Reserved: 2025-02-27T15:30:56.479Z

Link: CVE-2025-1757

cve-icon Vulnrichment

Updated: 2025-02-28T14:05:38.956Z

cve-icon NVD

Status : Undergoing Analysis

Published: 2025-02-28T05:15:34.097

Modified: 2025-03-06T20:21:36.547

Link: CVE-2025-1757

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-21T22:15:45Z

Weaknesses