CVE-2026-77970
MediumCVSS 5.9Summary
The ash_paper_trail library (ash-project) has a cleartext storage of sensitive information vulnerability. An attacker with read access to the generated version resource can recover sensitive values nested inside embedded resources, unions, or lists. The sensitive_attributes :redact and :ignore only act on top-level attributes, not descending into nested structures.
Risk Assessment
Anyone with access to version resources can obtain sensitive data such as tokens or credentials, leading to confidentiality breaches. The vulnerability affects versions from 0.3.0 before 0.7.0.
Recommendation
Update ash_paper_trail to version 0.7.0 or later, which includes the fix. Restrict access to version resources to trusted users only.
Other vulnerabilities in ash_paper_trail
See all- CVE-2026-77831Low
The ash_paper_trail library (ash-project) has an inefficient algorithmic complexity vulnerability. A user who can submit a large array attribute to a paper-trailed create or update action can cause a denial of service through excessive CPU and memory use. This results from cubic scaling of list comparison operations in full-diff mode.
- CVE-2026-75847Medium
The ash_paper_trail library (ash-project) has a cleartext storage of sensitive information vulnerability. An attacker with read access to the generated version resource can recover the plaintext of sensitive? attributes. These values are stored in the changes map, which is public and not marked as sensitive, so they are returned by the default read action and printed in logs and error messages.
Original NVD description (English source)
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.

