CVE-2026-82727 AshPhoenix Form.Auto leaks submitted params in an unknown _union_type error message
Attackers can leak sensitive submitted parameters, such as passwords, into error logs and crash reports by triggering a union type mismatch in AshPhoenix Form.Auto.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-82727?
CVE-2026-82727 is a low-severity vulnerability in ash-project ash_phoenix, published on 31 Aug 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Generation of Error Message Containing Sensitive Information vulnerability in ash-project ash_phoenix writes the entire raw submitted param map into an exception message, so secrets submitted alongside a union form field leak into logs, crash reports and the dev error page.
When AshPhoenix.Form.Auto builds a union sub-form and the submitted _union_type does not match a configured type, both raise sites built the message with inspect(params, pretty: true), embedding the full untrusted param map, and also inspected the internal union constraints[:types]. Because the message is constructed by the library rather than Phoenix's parameter logger, config :phoenix, :filter_parameters never redacts it. An attacker controls both the trigger and the contents: submitting %{"_union_type" => "nope", "password" => "..."} puts the password verbatim in the raised message. The fix reports only the offending _union_type and the valid type names, dropping the param and constraints dumps.
This issue affects ash_phoenix: from 1.2.17 before 2.3.25.
Weakness: CWE-209
Which versions are affected by CVE-2026-82727?
1 open source package ship an affected version, including ash_phoenix.
| Package | Affected | Fixed in |
|---|---|---|
ash_phoenix Hex | From 1.2.17 | 2.3.25 |
How do I fix CVE-2026-82727?
Upgrade ash_phoenix to 2.3.25 or later.
Is CVE-2026-82727 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-82727 exists.
Sources
Also known as EEF-CVE-2026-82727, GHSA-5xf4-hgcq-xw7v.