CVE-2026-8865: Avalon23 Products Filter WooCommerce Stored XSS Vulnerability
The Avalon23 Products Filter for WooCommerce plugin contains a stored cross-site scripting (XSS) vulnerability that allows authenticated WordPress contributors and higher-privileged users to inject malicious JavaScript into pages via the 'avalon23_qr' shortcode. When other users visit an affected page, the injected script executes in their browsers, potentially compromising their accounts or stealing sensitive data. The vulnerability exists because the plugin fails to properly sanitize and escape user input in shortcode attributes before displaying them in HTML.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 6.4 MEDIUM · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
- Weaknesses (CWE)
- CWE-79
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-06-24 / 2026-06-25
NVD description (verbatim)
The Avalon23 Products Filter for WooCommerce plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'avalon23_qr' shortcode in all versions up to, and including, 1.1.6. This is due to insufficient input sanitization and output escaping on user-supplied shortcode attributes (notably 'title' and 'fixed_link') which are concatenated directly into single-quoted HTML attributes by the AVALON23_HELPER::draw_html_item() helper without esc_attr() or any other encoding. 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.
4 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-8865 is a stored XSS flaw in the Avalon23 Products Filter for WooCommerce plugin (versions up to 1.1.6) stemming from insufficient input sanitization and output escaping in the AVALON23_HELPER::draw_html_item() method. The vulnerable shortcode 'avalon23_qr' accepts user-supplied attributes (particularly 'title' and 'fixed_link') and concatenates them directly into single-quoted HTML attributes without calling esc_attr() or equivalent encoding functions. This CWE-79 weakness allows authenticated attackers with Contributor role or above to craft malicious payloads that persist in the page content and execute whenever the page is accessed by other users. The CVSS 3.1 score of 6.4 (Medium severity) reflects a low attack complexity but requires prior authentication and results in limited confidentiality and integrity impact without availability impact.
Business impact
This vulnerability poses a targeted risk to WordPress sites using the Avalon23 Products Filter plugin. Compromised pages can silently redirect visitors to phishing sites, harvest credentials, or deface content, damaging customer trust and brand reputation. For e-commerce sites, malicious scripts could intercept payment data or session tokens. The attack requires an insider threat (Contributor or above), so the risk is lower than unauthenticated exploits but should not be dismissed—disgruntled employees or compromised staff accounts can cause significant harm. Remediation delays increase exposure window and potential attacker dwell time.
Affected systems
WordPress installations running the Avalon23 Products Filter for WooCommerce plugin in version 1.1.6 or earlier are vulnerable. The plugin is commonly deployed on WooCommerce-powered e-commerce sites. Only authenticated users with Contributor, Editor, or Administrator roles can exploit this vulnerability, meaning public websites without such user accounts are not directly at risk from external threat actors. However, any site that grants Contributor access to third parties—such as content creators, marketers, or external vendors—should prioritize assessment and patching.
Exploitability
Exploitation requires valid WordPress user credentials with at least Contributor-level permissions. The attacker must have the ability to create or edit pages/posts containing shortcodes. Once access is obtained, crafting a malicious shortcode is straightforward—no special tools or complex payloads are required. The vulnerability is not listed on CISA's Known Exploited Vulnerabilities (KEV) catalog, suggesting active in-the-wild exploitation has not been confirmed publicly, but this does not rule out opportunistic use by insiders or targeted exploitation following disclosure.
Remediation
Update the Avalon23 Products Filter for WooCommerce plugin to a patched version released after 1.1.6. Verify the specific version number against the vendor's official advisory or plugin repository. If no patch is immediately available, temporarily disable the 'avalon23_qr' shortcode or restrict access to page/post editing to trusted administrators only. For sites unable to patch quickly, audit user roles and remove unnecessary Contributor privileges from users who do not need them. Consider using a Web Application Firewall (WAF) rule to block or sanitize shortcode attributes containing script-like patterns as a temporary mitigation.
Patch guidance
Check the official Avalon23 or WooCommerce plugin repository for an updated version addressing CVE-2026-8865. Patch version numbers will be provided in the vendor advisory. Apply patches in a staging environment first to verify compatibility with your theme and other plugins before deploying to production. Set automatic updates to enabled for the plugin to reduce manual overhead. After patching, verify that existing shortcodes with the 'avalon23_qr' tag render correctly and do not exhibit unexpected behavior.
Detection guidance
Search your WordPress database and page/post content for instances of the '[avalon23_qr' shortcode. Review recent revisions and edit logs for pages/posts containing this shortcode to identify when and by whom they were modified. Monitor for suspicious attribute values in shortcode tags (e.g., 'title' or 'fixed_link' containing HTML, script tags, or event handlers). If you have a WAF or content inspection tool, flag HTTP requests containing encoded or obfuscated JavaScript payloads within shortcode attributes. Periodically audit user accounts with Contributor or higher roles and remove inactive or unnecessary accounts.
Why prioritize this
While the CVSS score of 6.4 is moderate, this vulnerability should be prioritized above its numeric rating because: (1) stored XSS attacks have high user impact once triggered, (2) WooCommerce e-commerce sites handle sensitive customer and payment data, (3) insider threats are difficult to predict and may go undetected for extended periods, and (4) the attack surface is broad if multiple users have Contributor access. Medium-severity XSS vulnerabilities affecting popular plugins warrant expedited patching within 30 days.
Risk score, explained
The CVSS 3.1 score of 6.4 (Medium) reflects: Network-based attack vector, Low attack complexity (simple XSS injection), Requirement for Contributor-level privileges (reduces likelihood), and Limited impact (Confidentiality and Integrity degradation, but no Availability impact). The 'Changed Scope' component elevates the score because injected scripts execute in victim user contexts, potentially affecting the entire application. The score does not account for business context (e-commerce data sensitivity) or insider threat probability, which would further elevate operational risk.
Frequently asked questions
Do I need to patch if I only allow Administrators to edit pages?
Reduced risk, but patching is still recommended. If an admin account is compromised, the vulnerability becomes immediately exploitable. Additionally, future staffing changes or user migrations may inadvertently grant Contributor access, leaving your site exposed. Patching eliminates the attack vector entirely.
Can this vulnerability affect pages that don't use the avalon23_qr shortcode?
No. Only pages and posts containing the vulnerable '[avalon23_qr' shortcode are at risk. Scan your site for instances of this shortcode to determine actual exposure. If none are found, the risk is mitigated until the shortcode is used.
Will the patch break my existing shortcodes?
Patching should not break existing functionality. The fix adds proper input escaping, which should render shortcodes safely without changing their visible output. Test in a staging environment before deploying to production to confirm compatibility with your specific setup.
Is this vulnerability actively being exploited in the wild?
CVE-2026-8865 is not currently listed on CISA's Known Exploited Vulnerabilities catalog, meaning no confirmed public exploitation has been reported. However, this does not guarantee the vulnerability is not being exploited opportunistically or in targeted attacks. Treat this as a high-priority patch regardless.
This analysis is provided for informational purposes and is based on publicly available vulnerability data as of the publication date. Security decisions should be informed by your organization's risk assessment, vendor advisories, and internal security policies. Patch availability, version numbers, and timelines should be verified against official vendor sources. SEC.co makes no warranties regarding the accuracy or completeness of this analysis and is not liable for damages resulting from remediation decisions made in reliance on this content. Always consult with your security team and conduct thorough testing before applying patches to production systems. Source: NVD (public-domain), retrieved 2026-07-29. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2016-20070MEDIUMPrivilege Escalation & Stored XSS in WordPress Booking Calendar Contact Form 1.0.23
- CVE-2018-25384MEDIUMStored XSS in Wikidforum 2.20 Allows Authenticated Attackers to Inject Malicious Scripts
- CVE-2019-25731MEDIUMStored XSS in Zuz Music 2.1 Contact Form
- CVE-2019-25737MEDIUMStored XSS in Live Chat Unlimited 2.8.3 – Admin Session Compromise
- CVE-2019-25739MEDIUMGigToDo 1.3 Stored XSS Vulnerability in Proposal Descriptions
- CVE-2019-25742MEDIUMStored XSS in Zoner Real Estate WordPress Theme 4.1.1 – Admin Account Compromise Risk
- CVE-2019-25743MEDIUMWordPress Soliloquy Lite 2.5.6 Stored XSS Vulnerability
- CVE-2019-25744MEDIUMWordPress Popup Builder 3.49 Stored XSS Vulnerability – Exploit Prevention & Patch Guide