MEDIUM 4.3

CVE-2026-12811: Cross-Site Scripting in Kortix-AI Suna Authentication Endpoint

Kortix-AI's Suna application (versions up to 0.8.38) contains a cross-site scripting (XSS) vulnerability in its authentication page. An attacker can manipulate the returnURL parameter to inject malicious code that executes in a user's browser when they visit a crafted link. The vulnerability requires user interaction—someone must click a malicious link—but carries no authentication barrier. Public exploit code exists. Upgrading to version 0.8.39 eliminates the risk.

Source data · NVD / CISA · public domain

CVSS
3.1 · 4.3 MEDIUM · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
Weaknesses (CWE)
CWE-79, CWE-94
Affected products
0 configuration(s)
Published / Modified
2026-06-21 / 2026-06-23

NVD description (verbatim)

A weakness has been identified in kortix-ai suna up to 0.8.38. Affected by this issue is the function router.replace/router.push of the file apps/frontend/src/app/auth/page.tsx of the component Auth Endpoint. Executing a manipulation of the argument returnURL can lead to cross site scripting. The attack may be launched remotely. The exploit has been made available to the public and could be used for attacks. Upgrading to version 0.8.39 can resolve this issue. This patch is called f5dec7aa0c1b8fa0125938f292c0f2430ca75f6c. It is advisable to upgrade the affected component. The researcher explains: "The issue was fixed in v0.8.39 without notifying the wider user base via a security disclosure."

8 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

The Auth Endpoint (apps/frontend/src/app/auth/page.tsx) in Suna uses the router.replace and router.push functions to handle redirect logic based on a returnURL argument. This argument is not properly sanitized before being passed to the router, allowing arbitrary JavaScript execution in the user's browser context. The weakness is classified as CWE-79 (Improper Neutralization of Input During Web Page Generation) and CWE-94 (Improper Control of Generation of Code). The vulnerability exists at the network boundary, requires no elevated privileges, and succeeds with low attack complexity. User interaction (clicking a malicious link) is mandatory for exploitation. The CVSS v3.1 score of 4.3 reflects medium severity with integrity impact but no confidentiality or availability consequences.

Business impact

Organizations deploying Suna for user authentication face defacement and credential-theft risks if attackers craft phishing campaigns embedding malicious returnURL parameters. Session hijacking and malware injection become possible vectors if an attacker controls the redirect destination. The need for user interaction limits blast radius, but the existence of public exploit code and lack of coordinated disclosure significantly increase likelihood of active exploitation. Reputation damage may occur if end-users experience unexpected page modifications or script execution during login flows.

Affected systems

Kortix-AI Suna versions 0.8.38 and earlier are affected. Version 0.8.39 and later contain the fix (commit f5dec7aa0c1b8fa0125938f292c0f2430ca75f6c). Any deployment of Suna in a user-facing authentication context is at risk until patched. Verify your installed version against release notes.

Exploitability

Exploitation is straightforward: an attacker crafts a URL with a malicious returnURL parameter and distributes it via phishing or watering-hole techniques. The payload executes when a user navigates to the page, requiring only the user's click—no social engineering bypass of multi-factor authentication is necessary. Public proof-of-concept code is available, lowering the barrier to weaponization. However, the necessity for user interaction and lack of sandbox escape limit impact to the user's session and browser context. No worm-like self-propagation is possible. The attack remains primarily useful for credential harvesting or session fixation.

Remediation

Immediate action: upgrade Suna to version 0.8.39 or later. Verify the commit hash f5dec7aa0c1b8fa0125938f292c0f2430ca75f6c is present in your deployment. If immediate patching is blocked, implement a Content Security Policy (CSP) header that restricts script-src to trusted domains and disallows inline scripts, mitigating (but not eliminating) XSS payload execution. Educate users to avoid clicking authentication links from untrusted sources. Consider implementing URL validation logic server-side to reject or sanitize returnURL values before rendering.

Patch guidance

Upgrade Suna to version 0.8.39 or later. This is not a zero-day; the vulnerability was silently patched without formal security notification, so no embargo applies. Test the upgrade in a non-production environment first to confirm compatibility with your custom authentication flows or integrations. Verify the deployment includes commit f5dec7aa0c1b8fa0125938f292c0f2430ca75f6c. Monitor release notes for any follow-up security advisories, as the lack of coordinated disclosure suggests additional issues may surface.

Detection guidance

Monitor authentication logs for unusual returnURL parameters containing encoded JavaScript, event handlers (e.g., 'javascript:', 'onerror='), or base64-encoded payloads. Network-level detection: inspect HTTP traffic for GET/POST requests to the auth endpoint with suspicious query parameters. Endpoint detection: look for browser console warnings or errors related to CSP violations or inline script execution attempts in users' network sessions. Web application firewalls can flag requests containing known XSS patterns in query parameters. Review access logs for abnormally high rates of failed or redirected authentications from external sources.

Why prioritize this

While the CVSS score of 4.3 places this in the medium-severity band, several factors warrant prioritization: (1) public exploit code eliminates discovery friction for opportunistic attackers, (2) authentication endpoints are high-value targets for credential harvesting, (3) silent patching suggests organizational processes may be immature—additional vulnerabilities may exist, and (4) the attack is trivial to execute at scale via phishing. Organizations with high-security postures or regulated compliance obligations should treat this as high priority despite moderate CVSS. Those with robust phishing controls and user awareness may deprioritize in favor of critical patches, but should not ignore.

Risk score, explained

CVSS v3.1 base score of 4.3 (MEDIUM) is calculated from: Attack Vector (Network, +0.0 vs local), Attack Complexity (Low, +0.0), Privileges Required (None, +0.0), User Interaction (Required, -0.5), Scope (Unchanged, no impact escalation), Integrity (Low, +0.4), Confidentiality (None), and Availability (None). The score penalizes user interaction and limits scope to the victim's session, but rewards the ease of exploitation and lack of authentication barriers. In practical terms, the presence of public exploit code and the high-value nature of authentication endpoints suggest real-world risk exceeds the base CVSS metric; organizations should apply a temporal and environmental multiplier accounting for threat landscape and internal controls.

Frequently asked questions

Does this vulnerability affect my instance if users do not click suspicious links?

Correct. The attack requires a user to click a malicious link containing a crafted returnURL parameter. If your organization has strong phishing awareness and email filtering, and if users are trained not to click unexpected authentication links, the practical risk is reduced—but not eliminated, as legitimate-looking phishing remains effective. Upgrade regardless.

Can an attacker steal session tokens or passwords with this XSS?

The XSS executes in the user's browser context and can read cookies, local storage, or session tokens if not protected by the HttpOnly flag. An attacker cannot directly steal passwords entered on the login form unless the injected script intercepts the form submission. Verify that your Suna deployment uses HttpOnly cookies for session tokens and implements secure password handling.

Is version 0.8.39 the only patched version?

Version 0.8.39 is confirmed to contain the fix. Verify against your release notes and confirm commit f5dec7aa0c1b8fa0125938f292c0f2430ca75f6c is in your build. Newer versions should also include the fix; refer to the Kortix-AI repository or advisory for the complete patch history.

Why wasn't this disclosed through a formal security advisory?

According to the vulnerability details, Kortix-AI fixed the issue in v0.8.39 without notifying the user base via a formal security disclosure. This suggests a gap in vulnerability disclosure practices. Monitor Kortix-AI's security channels and consider requesting a formal advisory to ensure your team is aware of the vulnerability and can plan patching accordingly.

This analysis is based on disclosed vulnerability data and is provided for informational purposes to assist security teams in risk assessment and remediation planning. SEC.co makes no warranty regarding the completeness or accuracy of third-party vulnerability disclosures. Organizations should verify all affected product versions, patch availability, and compatibility against official vendor advisories and release notes before deploying patches. Exploit code and attack techniques described herein are for defensive purposes only; unauthorized access to computer systems is illegal. For the most current information, consult the Kortix-AI security repository and CVE databases. This content does not constitute legal or compliance advice. Source: NVD (public-domain), retrieved 2026-07-28. Analysis generated by SEC.co (claude-haiku-4-5).