# CVE-2026-82730: ash-project ash_typescript unauthorized attribute disclosure in RPC

Source: https://junglewise.ai/threats/cve-2026-82730-ash-project-ash-typescript-unauthorized-attribute-disclosure-in  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-09-01. Updated: 2026-09-25  
License: CC BY 4.0 with a link back

CVE-2026-82730 · Severity: info · CVSS 5.3 · Published 2026-09-01

ash_typescript is a TypeScript integration library for Ash, a data-driven framework used to build APIs and web applications. A flaw in the RPC result processor fails to properly hide field values that have been restricted by access policies, allowing an unauthorized caller to read sensitive attributes that should have been denied. This could expose confidential data such as personal information, internal identifiers, or other sensitive fields that administrators intended to restrict.

Technologies: [Ash-Project Ash Typescript](https://junglewise.ai/threats/technologies/ash-typescript). Vendors: [Ash-Project](https://junglewise.ai/threats/vendors/ash-project).

## Quick answers

**Is CVE-2026-82730 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-82730 being exploited in the wild.

**How severe is CVE-2026-82730?** Informational severity, with a CVSS score of 5.3, published 1 September 2026.

**Which products and versions are affected?** Ash-Project Ash Typescript 0.11.0 to 0.17.x.

**Is there a fix for CVE-2026-82730?** No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.

**How is CVE-2026-82730 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-82730?** Check whether you run Ash-Project Ash Typescript at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

This is an authorization bypass vulnerability in ash_typescript's RPC layer. When a field policy denies access to an attribute, Ash wraps it in a %Ash.ForbiddenField{} marker that preserves the real value in an original_value key for internal use while hiding it from inspection. The normalize_primitive/1 function in lib/ash_typescript/rpc/result_processor.ex lacks a clause to strip these markers, causing the generic struct-to-map serialization path to call Map.from_struct/1, which serializes all keys including original_value. An unauthenticated RPC caller can trigger this by requesting an action that returns an embedded resource as a map, or by directly calling the public normalize_value_for_json/1 entry point. The issue affects ash_typescript versions 0.11.0 through 0.17.x; version 0.18.0 and later contain the fix.

## Affected products

- ash-project ash_typescript 0.11.0 to 0.17.x

## Timeline

- 2026-09-01: disclosed: CVE-2026-82730 published

## References

- [https://repo.hex.pm/](https://repo.hex.pm/)
- [https://github.com/](https://github.com/)

## Related threats

- [Ash TypeScript error message information disclosure](https://junglewise.ai/threats/cve-2026-105283-generation-of-error-message-containing-sensitive-information)
- [ash-project ash_typescript information disclosure in error responses](https://junglewise.ai/threats/cve-2026-82733-ash-project-ash-typescript-information-disclosure-in-error)
- [ash-project ash_typescript input validation bypass in TypedController](https://junglewise.ai/threats/cve-2026-82732-ash-project-ash-typescript-input-validation-bypass-in)
- [ash-project ash_typescript open redirect in typed controller routing](https://junglewise.ai/threats/cve-2026-82731-ash-project-ash-typescript-open-redirect-in-typed-controller)
- [ash-project ash_typescript information disclosure in error handler](https://junglewise.ai/threats/cve-2026-77950-ash-project-ash-typescript-information-disclosure-in-error)
