CVE-2026-82732: falha de média gravidade em ash-project ash_typescript
Declared argument constraints not enforced on AshTypescript typed controller routes
Publicada em
Aviso por e-mail quando ela entrar no KEV, ganhar PoC pública ou subir de nota.
13Vexday Risk Score
Sem sinal de exploração. Nenhum artefato público de exploração conhecido até agora.
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
Produtos afetados
ash-project · ash_typescriptCVEs relacionadas — ash-project ash_typescript
No mesmo produto, das mais perigosas para as 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%