CVE-2026-66296 in oaskit
Résumé
par VulDB • 03/08/2026
Vulnérabilité de « Neutralisation incorrecte des entrées lors de la génération de pages Web » (XSS) dans lud oaskit permettant un script intersite (cross-site scripting) par réflexion via le gestionnaire d'erreurs HTML par défaut.
Les fonctions `Oaskit.ErrorHandler.Default.format_reason/4` et `Oaskit.ErrorHandler.Default.reason_to_html/1`, situées dans `lib/oaskit/error_handler/default.ex`, affichent les échecs de validation des requêtes sous forme de page HTML chaque fois que l'en-tête Accept de la requête contient « html », en interpolant des chaînes contrôlées par la requête au sein de cette page sans effectuer d'échappement HTML. Les valeurs non échappées correspondent aux clés d'objet issues du corps de la requête ou provenant d'un objet ou d'un paramètre de requête de type `deepObject`, qui apparaissent dans le chemin d'instance (`instance path`) de l'erreur JSON Schema lorsque ce dernier les rejette (par exemple sous `additionalProperties: false`), ainsi que l'en-tête Content-Type brut, reflété dans les erreurs « unsupported-media-type » lors des échecs d'analyse.
Étant donné que les navigateurs envoient `Accept: text/html` lors de la navigation classique au niveau supérieur, un lien GET fabriqué est suffisant pour déclencher la page d'erreur ; aucune soumission de formulaire, aucun en-tête Content-Type personnalisé ni script contrôlé par l'attaquant du côté de la victime ne sont requis. Une charge utile telle que `filter[</code></h2><script>alert(document.domain)</script>]=x` termine le balisage englobant et le script injecté s'exécute dans l'origine de l'application utilisant oaskit, lui donnant ainsi accès aux cookies, à la session et aux réponses conformes à la politique d'origine (`same-origin`) de cette origine.
L'affichage HTML des erreurs et le gestionnaire vulnérable sont activés par défaut : `Oaskit.Plugs.ValidateRequest` définit `:html_errors` sur `true` et `:error_handler` sur `Oaskit.ErrorHandler.Default`, ce qui signifie que les applications suivant l'utilisation documentée sont affectées sans aucune action explicite de leur part.
Ce problème affecte oaskit : des versions 0.1.0 à la version antérieure à 0.14.1.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.