Impact
The vulnerability is a stored XSS in TaskRunHandler.post() in QD's web/handlers/task.py. The handler renders task log content into the HTTP response without encoding it, allowing the content of logtmp to be injected as raw HTML/JavaScript. Logtmp is derived from an exception object or from new_env.variables.__log__, which can be set by an attacker through the template extract_variables mechanism. An authenticated user with low privileges can craft a HAR template that inserts arbitrary JS into the __log__ variable via the api://util/unicode endpoint. When a victim subsequently triggers the task run, the injected script executes in the victim's browser within the QD application context.
Affected Systems
The affected product is QD, versions 20220208 through 20250803, inclusive. No vendor information was provided, and the vulnerability applies to all instances of this software within that version range.
Risk and Exploitability
Because the flaw is a stored XSS, a successful exploitation would allow the attacker to run arbitrary JavaScript in the context of a victim who visits the /task/<taskid>/run page. The EPSS score is not available and the vulnerability is not listed in CISA’s KEV catalog, so the current likelihood of exploitation is unknown. The lack of a public patch or workaround means that an organization must mitigate by applying a newer version or by restricting the vulnerable functionality. Until a fix is issued, the risk is moderate to high for organizations that permit low‑privileged users to trigger task runs and do not employ input filtering.
OpenCVE Enrichment