CVE-2026-66296
Received Received - Intake

Reflected XSS in Oaskit via Error Handler

Vulnerability report for CVE-2026-66296, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-03

Last updated on: 2026-08-03

Assigner: EEF

Description

Improper Neutralization of Input During Web Page Generation (XSS) vulnerability in lud oaskit allows reflected cross-site scripting via the default HTML error handler. Oaskit.ErrorHandler.Default.format_reason/4 and Oaskit.ErrorHandler.Default.reason_to_html/1 in lib/oaskit/error_handler/default.ex render request-validation failures as an HTML page whenever the request's Accept header contains html, interpolating request-controlled strings into that page without HTML escaping. The unescaped values are object keys taken from a request body or from an object or deepObject query parameter, which appear in the JSON Schema error's instance path when a schema rejects them (for example under additionalProperties: false), and the raw Content-Type header, reflected in unsupported-media-type errors when it fails to parse. Because browsers send Accept: text/html on ordinary top-level navigation, a crafted GET link is sufficient to trigger the error page; no form submission, custom Content-Type, or attacker-controlled script on the victim's side is required. A payload such as filter[</code></h2><script>alert(document.domain)</script>]=x terminates the enclosing markup and the injected script executes in the origin of the application using oaskit, giving it access to that origin's cookies, session, and same-origin responses. Both HTML error rendering and the vulnerable handler are enabled by default: Oaskit.Plugs.ValidateRequest defaults :html_errors to true and :error_handler to Oaskit.ErrorHandler.Default, so applications following the documented usage are affected without any opt-in. This issue affects oaskit: from 0.1.0 before 0.14.1.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-03
Last Modified
2026-08-03
Generated
2026-08-04
AI Q&A
2026-08-03
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Currently, no data is known.

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is a reflected cross-site scripting (XSS) vulnerability in the lud oaskit library. It occurs when error messages are rendered as HTML without properly escaping user-controlled input, allowing attackers to inject malicious scripts via request parameters or headers.

Detection Guidance

To detect this XSS vulnerability in oaskit, inspect HTTP responses for error pages that reflect unescaped user-controlled input. Check if the Accept header is set to text/html in requests. Look for payloads like filter[</code></h2><script>alert(document.domain)</script>]=x in query parameters or request bodies.

Impact Analysis

An attacker could craft a malicious link that, when clicked, executes arbitrary JavaScript in the context of the vulnerable application. This could steal cookies, session tokens, or sensitive data, or perform actions on behalf of the user.

Mitigation Strategies

Upgrade oaskit to version 0.14.1 or later. Disable HTML error rendering by setting :html_errors to false in Oaskit.Plugs.ValidateRequest. Ensure custom error handlers properly escape user-controlled input.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-66296. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart