Description
Cleartext Storage of Sensitive Information vulnerability in ash-project ash_paper_trail allows an attacker with read access to the generated version resource to recover sensitive values nested inside embedded resources, unions, or lists.
sensitive_attributes :redact and :ignore only act on the tracked resource's top-level attributes. maybe_redact_changes/3 and the stored-action-input path in AshPaperTrail.Resource.Changes.CreateNewVersion derive the sensitive set from the resource's own attributes and never descend into embedded, union, or list values, so a non-sensitive attribute or action argument that holds an embed with a sensitive? field (for example an accepted credentials embed carrying a token) is written to the version table in cleartext.
This issue affects ash_paper_trail: from 0.3.0 before 0.7.0.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| ash-project | ash_paper_trail | 0.3.0 – < 0.7.0 | 0.7.0 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Hex | ash_paper_trail | >= 0.3.0, < 0.7.0 | 0.7.0 | EEF-CVE-2026-77970 |
References
- https://github.com/ash-project/ash_paper_trail/security/advisories/GHSA-v645-6jm6-cgpj vendor-advisory related
- https://cna.erlef.org/cves/CVE-2026-77970.html related
- https://osv.dev/vulnerability/EEF-CVE-2026-77970 related
- https://github.com/ash-project/ash_paper_trail/commit/0cd4acfe7f48397673d8594fb5e2cd0f1bda6e40 patch