Low severity · published Sep 1, 2026
CVE-2026-82731
Unescaped path parameters in AshTypescript generated TypeScript client allow request redirection
2.3
CVSS
0.5%
EPSS
No
On KEV
Description
URL Redirection to Untrusted Site ('Open Redirect') vulnerability in ash-project ash_typescript allows an attacker who controls a path-parameter value to redirect a generated client's request, and the credentials attached to it, to an unintended route or an external origin.
The URL builders in lib/ash_typescript/typed_controller/codegen/route_renderer.ex replace each :param placeholder with a bare template interpolation and never call encodeURIComponent, so the value reaches executeTypedControllerRequest raw. A value containing ../ is normalised away by the fetch URL resolver and reaches a different route, while ? or # truncates the path and can smuggle or override query parameters. For a route whose path begins with a parameter, a value such as /evil.example.com/x yields the protocol-relative URL //evil.example.com/x, sending the request and the credentials from TypedControllerConfig to an attacker-controlled host. Nothing constrains the value at runtime: get_path_param_type/2 emits only a TypeScript type, which is erased.
The query-string path is unaffected, since URLSearchParams.set encodes its own values.
This issue affects ash_typescript: from 0.15.0 before 0.18.0.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.5% · higher than 43% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
AS
ash_typescript · ash-project
0.15.0 before 0.18.0; 6669e22ece34b4534e706a46d1842f01b68ee23a before 5165f752f5f92b755d946f2d1ce750ff69083ffc · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-82731
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-82731
cna.erlef.org
https://cna.erlef.org/cves/CVE-2026-82731.html
github.com
https://github.com/ash-project/ash_typescript/commit/5165f752f5f92b755d946f2d1ce750ff69083ffc
github.com
https://github.com/ash-project/ash_typescript/security/advisories/GHSA-6g23-p936-fm2f
osv.dev
https://osv.dev/vulnerability/EEF-CVE-2026-82731
More from ash_typescript
8.7
CVE-2026-74837
Unbounded atom creation from client-supplied RPC field names in AshTypescript field formatter
8.2
CVE-2026-82730
Authorization-redacted field values disclosed through AshTypescript result normalization
8.2
CVE-2026-77856
Unbounded atom creation from typed struct field names in AshTypescript field selector
6.3
CVE-2026-105283
Internal error terms inspected into AshTypescript RPC error responses
6.3
CVE-2026-82733
Route handler return value echoed into AshTypescript error response
