CVE-2026-82732: fallo de gravedad media en ash-project ash_typescript
Declared argument constraints not enforced on AshTypescript typed controller routes
Publicada el
Aviso por correo cuando entre en el KEV, tenga PoC pública o suba de nota.
13Vexday Risk Score
Sin señal de explotación. Ningún artefacto público de explotación conocido hasta ahora.
ssvc Trackcvss 6.3epss 0.7%
Improper Input Validation vulnerability in ash-project ash_typescript allows a remote attacker to submit argument values outside a declared allowlist or bound on typed-controller routes.
AshTypescript.TypedController.RequestHandler in lib/ash_typescript/typed_controller/request_handler.ex calls Ash.Type.cast_input/3 and treats an {:ok, cast} result as fully validated. In Ash these are separate steps: cast_input/3 only coerces the term, while every constraint declared on the argument is applied by Ash.Type.apply_constraints/3, which this path never calls. Constraints such as one_of, max_length, min and max, and match are therefore inert, so a value outside a declared allowlist is accepted and passed to the route handler. Codegen renders the same constraints into the generated TypeScript types, so an allowlist appears enforced to a TypeScript caller while any other HTTP client ignores it. Empty-string to nil normalization also lives in apply_constraints, so the allow_nil?: false check accepts "" for a required argument.
Where a constraint gates a role, a status, or a sort direction, this becomes a privilege or state-machine bypass.
This issue affects ash_typescript: from 0.15.0 before 0.18.0.
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Productos afectados
ash-project · ash_typescriptCVEs relacionadas — ash-project ash_typescript
En el mismo producto, de las más peligrosas a las menos.
CVE-2026-74837HIGHUnbounded atom creation from client-supplied RPC field names in AshTypescript field formatterEPSS 0.5%CVE-2026-82733MEDIUMRoute handler return value echoed into AshTypescript error responseEPSS 0.5%CVE-2026-77950MEDIUMRPC error handler fails open in AshTypescript, disclosing unredacted errorsEPSS 0.5%CVE-2026-77856HIGHUnbounded atom creation from typed struct field names in AshTypescript field selectorEPSS 0.5%CVE-2026-82731LOWUnescaped path parameters in AshTypescript generated TypeScript client allow request redirectionEPSS 0.5%CVE-2026-82730HIGHAuthorization-redacted field values disclosed through AshTypescript result normalizationEPSS 0.5%