Skip to main content

Ash Paper Trail CVE-2026-77970

| EUVDEUVD-2026-68143 MEDIUM
Cleartext Storage of Sensitive Information (CWE-312)
2026-08-30 EEF
5.9
CVSS 4.0 · Vendor: EEF
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain read access to version resource table
  2. Delivery
    Query stored version records for targeted resource
  3. Exploit
    Parse JSON version payload
  4. Execution
    Locate non-sensitive parent attribute containing embedded struct
  5. Persist
    Extract cleartext sensitive field values (tokens, passwords)
  6. Impact
    Leverage recovered credentials

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V14 - Data Protection Encrypted storage of sensitive data
Exploitation Conditions

Exploitation requires three concurrent conditions: (1) the application runs ash_paper_trail 0.3.0-0.6.x; (2) at least one Ash resource tracked by ash_paper_trail defines a non-sensitive top-level attribute whose type is an embedded resource, union, or array containing one or more attributes marked sensitive? true - for example, an accepted_credentials embed carrying a token field; and (3) the attacker has read access to the Ash version resource table, whether via database credentials, a privileged application user, or a secondary read path such as an audit log viewer. Exploitation is NOT possible when all sensitive data lives only in top-level attributes already covered by sensitive_attributes :redact or :ignore, nor when the attacker lacks any read path to the version table. The local attack vector (AV:L) in the CVSS 4.0 vector confirms that remote unauthenticated exploitation is not applicable; some form of local or credentialed access to the version data store is a prerequisite.

Impact

The CVSS 4.0 vector (AV:L/AC:L/AT:P/PR:N/UI:N/VC:H) scores 5.9 Medium, reflecting that exploitation is local in attack vector and requires a specific configuration precondition (AT:P): the target application must define at least one embedded resource or union type carrying sensitive? fields nested inside a non-sensitive top-level attribute. EPSS data was not provided; KEV status is absent, and no public exploit code has been identified, so real-world exploitation pressure is low at this time. The confidentiality impact is rated High because credentials, tokens, or API keys stored in embedded structures could be fully recovered from audit logs. Integrity and availability are unaffected. The practical blast radius is bounded by (a) the niche adoption footprint of ash_paper_trail itself and (b) the requirement that applications use the specific pattern of non-sensitive parent attributes wrapping sensitive embedded children - a common enough anti-pattern in credential-handling code that security teams should not dismiss this as theoretical. Overall: medium-priority remediation appropriate for most operators, urgent only for applications that store credential embeds in audit-trailed resources.

Exploit ScenarioDerived

An attacker who has obtained read access to the application's version/audit table - through a compromised read-only database credential, an overprivileged application role, or direct database access - queries stored version records for resources that accept credential embeds. Because the parent attribute is not marked sensitive, the full embedded structure including tokens or passwords is stored in plaintext JSON, allowing the attacker to extract valid credentials directly from the audit log without interacting with the live application.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAI

Cleartext exposure of nested sensitive fields in Ash Paper Trail audit logs (versions 0.3.0-0.6.x) allows any principal with read access to the version resource table to recover credentials, tokens, or other sensitive values stored inside embedded resources, union types, or lists. The redaction logic in maybe_redact_changes/3 and AshPaperTrail.Resource.Changes.CreateNewVersion only inspects top-level resource attributes for the sensitive? flag, never recursing into nested structures, so a parent attribute that is not itself marked sensitive silently passes its embedded sensitive children through to the version table in cleartext. No public exploit has been identified and the issue is not listed in CISA KEV; a vendor-released patch is available at version 0.7.0.

RemediationAI

Upgrade ash_paper_trail to version 0.7.0 or later, which introduces recursive redaction of sensitive fields in embedded resources, union types, and arrays via the new redact_dumped_value/4 helper. The vendor security advisory is at https://github.com/ash-project/ash_paper_trail/security/advisories/GHSA-v645-6jm6-cgpj and the fixing commit is https://github.com/ash-project/ash_paper_trail/commit/0cd4acfe7f48397673d8594fb5e2cd0f1bda6e40. As an interim workaround prior to upgrading, teams should audit all Ash resources tracked by ash_paper_trail and identify any attribute that accepts an embedded resource or union containing sensitive? fields; moving the entire parent attribute to the :redact or :ignore list in sensitive_attributes will prevent the parent from being stored at all, which eliminates the leakage path at the cost of losing audit visibility for that attribute. Additionally, restrict read access to the version resource table to the minimum required principals, reducing the exposure window for already-stored cleartext data. Note that already-persisted version records containing leaked sensitive values are not retroactively redacted by the upgrade and should be reviewed and purged if compliance obligations require.

Affected VersionsENISA

ash_paper_trail 0.3.0 <0.7.0
ash_paper_trail ffe5e03b14d26b73bff17f3eca811591788aba9c <0cd4acfe7f48397673d8594fb5e2cd0f1bda6e40

Affected Packages

euvd ash_paper_trail fix: 0.7.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

ash_paper_trail is an Elixir library (CPE: cpe:2.3:a:ash-project:ash_paper_trail:*:*:*:*:*:*:*:*) built on the Ash Framework that records audit trail versions of resource state changes. CWE-312 (Cleartext Storage of Sensitive Information) is the precise root cause: the library's change-builder pipeline derives the set of attributes to redact solely from the top-level Ash.Resource.Info.attributes/1 call on the primary resource and never invokes equivalent logic on nested embedded resource modules, union subtypes, or array item types. The commit diff confirms the fix adds a recursive redact_dumped_value/4 function that propagates a sensitive_mode parameter through dump_value calls for embedded resources, unions, and arrays, and a companion redact_embedded_attribute/3 that checks attribute.sensitive? at each level of nesting. Reported by the Erlang Ecosystem Foundation (EEF), which serves as the CNA for this ecosystem.

Know when Ash Paper Trail gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (EEF) PRIMARY 5.9 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.7 MEDIUM

Local vector because version table read access is required; AC:H for the specific embedded-sensitive-field configuration precondition; PR:L because read access to the version resource constitutes a low-privilege credential.

3.1 AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N
4.0 AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (EEF).

CVSS VectorVendor: EEF

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

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.

Threat Intelligence Overview

EPSS Score
0.1%
Top 99% exploitable
Prevalence
Low
niche audit trail library for the Elixir Ash Framework
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

30
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +30
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy