CVE-2026-105283
Internal error terms inspected into AshTypescript RPC error responses
Published Oct 12, 2026 · updated Oct 12, 2026
## Summary Generation of Error Message Containing Sensitive Information vulnerability in ash-project ash_typescript allows an unauthenticated attacker to read internal Elixir terms from an RPC error response by provoking an error the error builder has no dedicated clause for. in renders a pipeline error term that matches no specific clause with and places the result in of the client-facing error. Ash exceptions take a separate path in where unhandled cases are redacted behind an , but these fallbacks have no redaction, so whatever the term carries reaches the HTTP or channel response. Two request paths hand it such terms: a struct-typed action argument with an invalid nested value, where in throws the raw cast error into the builder, and field selection on a generic action that returns a primitive, where inspects the full struct into . Resource module names in are not treated as sensitive and are out of scope. This issue affects ash_typescript: from 0.1.0 before 0.19.1. ## Details **1. Error funnel.** runs the request through , and . Any from these goes to , which calls with the raw reason term. **2. Unredacted fallbacks.** has clauses for the error tuples the pipeline is expected to emit. A two-tuple whose first element is an atom but matches no clause is rendered as with set to , and any other term becomes with set to . Ash exceptions never reach these clauses because handles them and redacts unhandled ones behind an , so only this path has no redaction. **3. Reachable triggers.** throws the raw error, a keyword list, when a struct-typed argument fails to cast, and turns the throw into for the funnel. Separately, requesting on a generic action whose return type is a primitive produces an tuple whose is formatted by , which inspects the whole struct, constraints and decoration included, into . ## Proof of concept 1. Expose an AshTypescript RPC action that takes a struct-typed argument, for example an argument whose struct has a UUID field. 2. Send the action reques
Code
The project this record applies to. Exploit listings stay in References.
Timeline
Detection, updates, and resolution for this record.
Oct 12, 2026 · GitHub Advisory Database
Detected
## Summary Generation of Error Message Containing Sensitive Information vulnerability in ash-project ash_typescript allows an unauthenticated attacker to read internal Elixir terms from an RPC error response by provoking an error the error builder has no dedicated clause for. in renders a pipeline error term that matches no specific clause with and places the result in of the client-facing error.
Oct 12, 2026 · GitHub Advisory Database
Fix available
ash_typescript fixed in 0.19.1
Oct 12, 2026 · GitHub Advisory Database
Fix available
ash_typescript fixed in 0.19.1
Oct 12, 2026 · GitHub Advisory Database
Updated
## Summary Generation of Error Message Containing Sensitive Information vulnerability in ash-project ash_typescript allows an unauthenticated attacker to read internal Elixir terms from an RPC error response by provoking an error the error builder has no dedicated clause for. in renders a pipeline error term that matches no specific clause with and places the result in of the client-facing error.
Affected
- Hex ash_typescript0.1.0 → 0.19.1
Sources
- CVE.orgVulnerability recordCVE-2026-105283
Official CVE identifier
cve.org - GitHub Advisory DatabasePackage advisoryGHSA-7gxc-w225-f7f3
GitHub Advisory Database record mirrored by OSV.
github.com - OSV.devPackage advisoryEEF-CVE-2026-105283
Internal error terms inspected into AshTypescript RPC error responses
osv.dev