Visual Link Preview <= 2.2.7 - Authenticated (Contributor+) Stored Cross-Site Scripting via visual-link-preview Shortcode
Strategic Overview
- Status
- Patched in 2.2.8
- Affected Plugin
- Visual Link Preview
- Affected Version
<= 2.2.7- CVSS
- 6.4Medium
- Weakness type
- CWE-80 · Improper Neutralization of Script-Related HTML Tags in a Web Page (Basic XSS)
- CVE
CVE-2025-11987
At a glance
CVE-2025-11987 is a medium-severity Improper Neutralization of Script-Related HTML Tags in a Web Page (Basic XSS) vulnerability in the Visual Link Preview WordPress plugin, affecting versions <= 2.2.7. It carries a CVSS score of 6.4 (reachable over the network; low attack complexity). Exploitation requires an authenticated account at Contributor level or above. The issue is fixed in version 2.2.8; sites on affected versions should update now. Disclosed November 2025, reported by Rafshanzani Suhada.
Vulnerability Overview
The Visual Link Preview plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the plugin's visual-link-preview shortcode in versions up to, and including, 2.2.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.
Technical Analysis
The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no interaction from a victim user.
CWE-80: Improper Neutralization of Script-Related HTML Tags in a Web Page (Basic XSS)
The product receives input from an upstream component, but it does not neutralize or incorrectly neutralizes special characters such as <, >, and & that could be interpreted as web-scripting elements when they are sent to a downstream component that processes web pages.
Remediation
Update to version 2.2.8, or a newer patched version
How does WordSec protect against this?
An attacker needs Contributor access first, so the firewall sees the attempt as traffic from a logged-in account: WordSec's web application firewall inspects request payloads before WordPress loads them. None of that substitutes for the fix: Visual Link Preview 2.2.8 closes this, and updating the plugin is the step that ends it.
- Firewall
- Alerts
External References
Related records
Other vulnerabilities in Visual Link Preview
- 6.4CVE-2026-39670: Visual Link Preview <= 2.3.0 SSRF
CVE-2026-39670 - 5.4CVE-2021-24635: Visual Link Preview <= 2.2.2 Unauthorised AJAX Calls
CVE-2021-24635 - 4.3CVE-2026-54821: Visual Link Preview <= 2.3.1 Info Exposure
CVE-2026-54821 - 4.3CVE-2026-48878: Visual Link Preview <= 2.4.1 Information Exposure
CVE-2026-48878 - 4.3CVE-2026-24984: Visual Link Preview <= 2.2.9 Missing Authorization
CVE-2026-24984
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C