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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| ash-project | ash_phoenix | 1.2.17 – < 2.3.25 | 2.3.25 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Hex | ash_phoenix | >= 1.2.17, < 2.3.25 | 2.3.25 | EEF-CVE-2026-82727 |
References
- https://github.com/ash-project/ash_phoenix/security/advisories/GHSA-5xf4-hgcq-xw7v vendor-advisory related
- https://cna.erlef.org/cves/CVE-2026-82727.html related
- https://osv.dev/vulnerability/EEF-CVE-2026-82727 related
- https://github.com/ash-project/ash_phoenix/commit/0c1775c3cf8988f9abd10a8f92315afc5f06f16d patch