CVE-2026-96765: WPO365 | SEAMLESS WORDPRESS + MICROSOFT INTEGRATION (WPO365 | LOGIN) <= 44.1 - Unauthenticated Stored Cross-Site Scripting via 'id_token' Parameter (iss / unique_name JWT claims)
The WPO365 | SEAMLESS WORDPRESS + MICROSOFT INTEGRATION (WPO365 | LOGIN) plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'idtoken' parameter in all versions up to, and including, 44.1 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The payload is stored in the wpo365errors transient for up to three days by submitting a crafted unauthenticated request with a forged idtoken whose base64url-decoded uniquename or iss claim contains malicious HTML, requiring no prior authentication or user interaction beyond an administrator later visiting the WPO365 wizard page.
Affected Software
Event History
Frequently Asked Questions
Does exploitation require an attacker account or a victim to interact with attacker-controlled content?
No attacker authentication is required. An attacker can submit a crafted unauthenticated request containing a forged id_token; execution occurs only if an administrator later opens the WPO365 wizard page.
How long can an injected payload remain available to execute?
The malicious content is stored in the wpo365_errors transient for up to three days. During that period, an administrator visiting the WPO365 wizard page may trigger the stored script.
Which token fields are used to carry the malicious content?
The forged id_token can contain malicious HTML in its base64url-decoded unique_name or iss JWT claim. The affected handling does not sufficiently sanitize those values before they are displayed.