{"id":"CVE-2026-75847","state":"PUBLISHED","title":"Sensitive attribute values stored in a non-sensitive public changes map in AshPaperTrail","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 the plaintext of sensitive? attributes.\n\nAshPaperTrail stores the values of tracked sensitive? attributes in the generated version resource's changes map, which is declared public? true and sensitive? false, so the values are returned by the version resource's default read action and printed in logs, inspect output, and error messages instead of being redacted. AshPaperTrail.Resource.Transformers.CreateVersionResource derives the changes map's sensitivity from the ignore_attributes list (the attributes excluded from changes) rather than from the tracked attributes actually stored in it, and ignore_attributes defaults to empty, so the flag is effectively always false.\n\nThis issue affects ash_paper_trail: from 0.1.1 before 0.7.0.","publishedAt":"2026-08-30T00:18:05.390Z","updatedAt":"2026-08-31T17:03:22.739Z","severity":{"score":5.9,"label":"Medium","version":"4.0","vector":"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","source":"EEF"},"assigner":"EEF","products":["ash-project ash_paper_trail"],"affected":[{"vendor":"ash-project","product":"ash_paper_trail","packageName":"ash_paper_trail","packageURL":"pkg:hex/ash_paper_trail","defaultStatus":"unaffected","versions":[{"version":"0.1.1","status":"affected","lessThan":"0.7.0","versionType":"semver"}],"collectionURL":"https://repo.hex.pm","cpes":["cpe:2.3:a:ash-project:ash_paper_trail:*:*:*:*:*:*:*:*"],"modules":["'Elixir.AshPaperTrail.Resource.Transformers.CreateVersionResource'"],"programFiles":["lib/resource/transformers/create_version_resource.ex"],"programRoutines":[{"name":"'Elixir.AshPaperTrail.Resource.Transformers.CreateVersionResource':transform/1"}],"repo":"https://github.com/ash-project/ash_paper_trail"},{"vendor":"ash-project","product":"ash_paper_trail","packageName":"ash-project/ash_paper_trail","packageURL":"pkg:github/ash-project/ash_paper_trail","defaultStatus":"unaffected","versions":[{"version":"e379ca90a0c4db54d07a9d1556fd12f2413f6e98","status":"affected","lessThan":"90efdb0769f83f7c5daba6a87758daebf4baf32c","versionType":"git"}],"collectionURL":"https://github.com","cpes":["cpe:2.3:a:ash-project:ash_paper_trail:*:*:*:*:*:*:*:*"],"modules":["'Elixir.AshPaperTrail.Resource.Transformers.CreateVersionResource'"],"programFiles":["lib/resource/transformers/create_version_resource.ex"],"programRoutines":[{"name":"'Elixir.AshPaperTrail.Resource.Transformers.CreateVersionResource':transform/1"}],"repo":"https://github.com/ash-project/ash_paper_trail"}],"references":["https://github.com/ash-project/ash_paper_trail/security/advisories/GHSA-wqjr-xmxp-j554","https://cna.erlef.org/cves/CVE-2026-75847.html","https://osv.dev/vulnerability/EEF-CVE-2026-75847","https://github.com/ash-project/ash_paper_trail/commit/90efdb0769f83f7c5daba6a87758daebf4baf32c"],"weaknesses":["CWE-312"],"ingestedAt":"2026-10-29T20:12:58.252Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/75xxx/CVE-2026-75847.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-75847","state":"PUBLISHED","datePublished":"2026-08-30T00:18:05.390Z","dateUpdated":"2026-08-31T17:03:22.739Z","assignerShortName":"EEF","assignerOrgId":"6b3ad84c-e1a6-4bf7-a703-f496b71e49db","dateReserved":"2026-08-20T20:00:01.970Z"},"containers":{"cna":{"title":"Sensitive attribute values stored in a non-sensitive public changes map in AshPaperTrail","descriptions":[{"lang":"en","value":"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 the plaintext of sensitive? attributes.\n\nAshPaperTrail stores the values of tracked sensitive? attributes in the generated version resource's changes map, which is declared public? true and sensitive? false, so the values are returned by the version resource's default read action and printed in logs, inspect output, and error messages instead of being redacted. AshPaperTrail.Resource.Transformers.CreateVersionResource derives the changes map's sensitivity from the ignore_attributes list (the attributes excluded from changes) rather than from the tracked attributes actually stored in it, and ignore_attributes defaults to empty, so the flag is effectively always false.\n\nThis issue affects ash_paper_trail: from 0.1.1 before 0.7.0."}],"affected":[{"vendor":"ash-project","product":"ash_paper_trail","packageName":"ash_paper_trail","packageURL":"pkg:hex/ash_paper_trail","defaultStatus":"unaffected","versions":[{"version":"0.1.1","status":"affected","lessThan":"0.7.0","versionType":"semver"}],"collectionURL":"https://repo.hex.pm","cpes":["cpe:2.3:a:ash-project:ash_paper_trail:*:*:*:*:*:*:*:*"],"modules":["'Elixir.AshPaperTrail.Resource.Transformers.CreateVersionResource'"],"programFiles":["lib/resource/transformers/create_version_resource.ex"],"programRoutines":[{"name":"'Elixir.AshPaperTrail.Resource.Transformers.CreateVersionResource':transform/1"}],"repo":"https://github.com/ash-project/ash_paper_trail"},{"vendor":"ash-project","product":"ash_paper_trail","packageName":"ash-project/ash_paper_trail","packageURL":"pkg:github/ash-project/ash_paper_trail","defaultStatus":"unaffected","versions":[{"version":"e379ca90a0c4db54d07a9d1556fd12f2413f6e98","status":"affected","lessThan":"90efdb0769f83f7c5daba6a87758daebf4baf32c","versionType":"git"}],"collectionURL":"https://github.com","cpes":["cpe:2.3:a:ash-project:ash_paper_trail:*:*:*:*:*:*:*:*"],"modules":["'Elixir.AshPaperTrail.Resource.Transformers.CreateVersionResource'"],"programFiles":["lib/resource/transformers/create_version_resource.ex"],"programRoutines":[{"name":"'Elixir.AshPaperTrail.Resource.Transformers.CreateVersionResource':transform/1"}],"repo":"https://github.com/ash-project/ash_paper_trail"}],"references":[{"url":"https://github.com/ash-project/ash_paper_trail/security/advisories/GHSA-wqjr-xmxp-j554","tags":["vendor-advisory","related"]},{"url":"https://cna.erlef.org/cves/CVE-2026-75847.html","tags":["related"]},{"url":"https://osv.dev/vulnerability/EEF-CVE-2026-75847","tags":["related"]},{"url":"https://github.com/ash-project/ash_paper_trail/commit/90efdb0769f83f7c5daba6a87758daebf4baf32c","tags":["patch"]}],"metrics":[{"cvssV4_0":{"Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","Safety":"NOT_DEFINED","attackComplexity":"LOW","attackRequirements":"PRESENT","attackVector":"LOCAL","baseScore":5.9,"baseSeverity":"MEDIUM","privilegesRequired":"NONE","providerUrgency":"NOT_DEFINED","subAvailabilityImpact":"NONE","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","userInteraction":"NONE","valueDensity":"NOT_DEFINED","vectorString":"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","version":"4.0","vulnAvailabilityImpact":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"NONE","vulnerabilityResponseEffort":"NOT_DEFINED"},"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-312","description":"CWE-312 Cleartext Storage of Sensitive Information","lang":"en","type":"CWE"}]}],"providerMetadata":{"shortName":"EEF","orgId":"6b3ad84c-e1a6-4bf7-a703-f496b71e49db","dateUpdated":"2026-08-30T00:18:05.390Z"},"configurations":[{"lang":"en","supportingMedia":[{"base64":false,"type":"text/html","value":"<p>The tracked resource must declare one or more <code>sensitive?</code> attributes that are not listed in <code>ignore_attributes</code>. Exposure requires read access to the generated version resource, which ships with <code>defaults [:read, ...]</code> and a <code>changes</code> field that is selectable by default.</p>"},{"base64":false,"type":"text/markdown","value":"The tracked resource must declare one or more `sensitive?` attributes that are not listed in `ignore_attributes`. Exposure requires read access to the generated version resource, which ships with `defaults [:read, ...]` and a `changes` field that is selectable by default."}],"value":"The tracked resource must declare one or more sensitive? attributes that are not listed in ignore_attributes. Exposure requires read access to the generated version resource, which ships with defaults [:read, ...] and a changes field that is selectable by default."}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:a:ash-project:ash_paper_trail:*:*:*:*:*:*:*:*","versionEndExcluding":"0.7.0","versionStartIncluding":"0.1.1","vulnerable":true}],"negate":false,"operator":"OR"}],"operator":"AND"}],"credits":[{"lang":"en","type":"remediation developer","value":"Zach Daniel / Ash Project"},{"lang":"en","type":"finder","value":"Peter Ullrich"},{"lang":"en","type":"reporter","value":"Peter Ullrich"},{"lang":"en","type":"coordinator","value":"Jonatan Männchen / EEF"}],"impacts":[{"capecId":"CAPEC-37","descriptions":[{"lang":"en","value":"CAPEC-37 Retrieve Embedded Sensitive Data"}]}],"source":{"discovery":"EXTERNAL"}},"adp":[{"title":"CISA ADP Vulnrichment","references":[{"url":"https://github.com/ash-project/ash_paper_trail/security/advisories/GHSA-wqjr-xmxp-j554","tags":["exploit"]}],"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-08-31T17:02:59.690762Z","id":"CVE-2026-75847","options":[{"Exploitation":"poc"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-08-31T17:03:22.739Z"}}]}}}