Sceawere

Vulnerability Detail

CVE-2026-75981UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV

TranslatePress Unauthenticated Stored Cross-Site Scripting

Vulnerability Metadata

Severity
High
Score / CVSS
7.2
Creation Date
4h ago
Vendor
cozmoslabs
Product
TranslatePress – Translate Multilingual sites with AI Translation
Attack Type
CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
Attack Complexity
LOW

Narrative and Response

Description

The TranslatePress – Translate Multilingual sites with AI Translation plugin for WordPress is vulnerable to unauthenticated Stored Cross-Site Scripting in versions up to and including 3.2.5. The special gettext markers '#!trpst#' and '#!trpen#' are unconditionally rewritten to '<' and '>' by translate_page() in includes/class-translation-render.php (lines 538-539). Because those markers are plain text with no HTML-special characters, an unauthenticated attacker can embed them in a comment; the markers survive wp_kses, and when the post is viewed in a secondary language the substitution turns the attacker's '#!trpst#img ... #!trpen#' into a real <img> tag. remove_tags_from_output() only strips <script>/<style>, so an <img onerror=...> executes in the visitor's browser.

Executive Summary

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Executive Summary Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Technical Details

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Detailed Technical Analysis Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Mitigations

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Remediation & Mitigations Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

References

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Intelligence References Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Additional Metadata

{
  "score": "7.2",
  "pubDate": "2026-08-19T07:16:59.907Z",
  "pubdate": "2026-08-19T07:16:59.907Z",
  "executiveSummary": "The TranslatePress – Translate Multilingual sites with AI Translation plugin for WordPress is affected by an unauthenticated Stored Cross-Site Scripting (XSS) vulnerability in versions up to and including 3.2.5. This security flaw allows unauthenticated remote attackers to inject malicious payloads via user-submitted content such as comments.\nThe root cause stems from the insecure handling and unconditional rewriting of custom gettext marker strings into HTML angle brackets during the translation rendering process. Because these plaintext markers bypass standard HTML sanitization mechanisms like wp_kses, they are successfully persisted in the database.\nWhen a visitor views the affected post or page in a secondary language, the rendering engine translates these markers into active HTML tags. Due to insufficient filtering by the output sanitization routines, injected elements such as event handlers inside image tags execute arbitrary JavaScript within the context of the victim's browser session.\nThe impact of this vulnerability includes potential session hijacking, unauthorized actions performed on behalf of authenticated users, and defacement of the affected multilingual WordPress site. Exploitation requires no prior authentication or administrative privileges, presenting a significant risk to exposed web applications.",
  "technicalDetails": "The vulnerability resides in the TranslatePress – Translate Multilingual sites with AI Translation plugin, specifically affecting versions up to and including 3.2.5. The vulnerable component is located in includes/class-translation-render.php, where the translate_page() function processes output strings.\nThe core flaw involves the unconditional rewriting of specialized translation markers, specifically '#!trpst#' and '#!trpen#', into HTML opening and closing angle brackets ('<' and '>') respectively, on lines 538-539 of includes/class-translation-render.php. Because these markers consist entirely of plain text characters without native HTML metacharacters, they successfully bypass standard sanitization routines such as wp_kses during input submission.\nAn unauthenticated attacker exploits this behavior by submitting a crafted comment or user input containing the literal marker sequences encapsulating raw HTML tags and attributes, such as '#!trpst#img src=x onerror=alert(document.cookie)#!trpen#'. The payload is stored persistently in the database without being neutralized.\nThe attack flow proceeds as follows: First, the attacker submits the malicious payload through a public-facing comment form or vector accepted by the application. Second, the WordPress database stores the string containing the plaintext markers. Third, when a site visitor requests the page in a secondary language, the translation rendering mechanism invokes translate_page(). Fourth, the function translates the '#!trpst#' and '#!trpen#' strings into actual '<' and '>' characters.\nFinally, the output passes through remove_tags_from_output(), which is insufficiently restrictive as it only strips specific tags such as <script> and <style>, leaving event handlers in other elements entirely intact. Consequently, the injected payload manifests as a fully functional HTML element, such as an <img> tag with an onerror event handler, which immediately executes in the browser of any user viewing the localized page."
}