{"id":"CVE-2026-75847","aliases":["EEF-CVE-2026-75847","EUVD-2026-68142","GHSA-wqjr-xmxp-j554"],"status":"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.","severity":{"version":"4.0","score":5.9,"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","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00121,"percentile":0.01884,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-312"],"published":"2026-08-30T00:18:05Z","modified":"2026-10-28T02:31:09Z","fixes":[{"ecosystem":"Hex","package":"ash_paper_trail","fixed_in":["0.7.0"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Hex","package":"ash_paper_trail","ranges":[{"type":"SEMVER","events":[{"introduced":"0.1.1"},{"fixed":"0.7.0"}]}],"versions":["0.1.1","0.1.2","0.1.2-rc.0","0.1.3","0.1.4","0.2.0","0.2.1","0.3.0","0.3.1","0.4.0","0.5.0","0.5.1","0.5.2","0.5.3","0.5.4","0.5.5","0.5.6","0.5.7","0.6.0"]}],"products":[{"vendor":"ash-project","product":"ash_paper_trail"}],"references":[{"url":"https://github.com/ash-project/ash_paper_trail/security/advisories/GHSA-wqjr-xmxp-j554","tags":["vendor-advisory","related","exploit","advisory"]},{"url":"https://cna.erlef.org/cves/CVE-2026-75847.html","tags":["related","web"]},{"url":"https://osv.dev/vulnerability/EEF-CVE-2026-75847","tags":["related","web"]},{"url":"https://github.com/ash-project/ash_paper_trail/commit/90efdb0769f83f7c5daba6a87758daebf4baf32c","tags":["patch","fix"]},{"url":"https://github.com","tags":["web"]},{"url":"https://repo.hex.pm","tags":["web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/75xxx/CVE-2026-75847.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-75847","tags":["advisory"]},{"url":"https://github.com/ash-project/ash_paper_trail","tags":["package"]},{"url":"https://hex.pm/packages/ash_paper_trail","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2026-75847","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.","status":"published","published":"2026-08-30T00:18:05.39Z","modified":"2026-08-31T17:03:22.739Z","cvss":[{"version":"4.0","score":5.9,"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","level":"medium","assessor":"cna"}],"cwes":["CWE-312"],"updated_at":"2026-11-02T14:20:07.260654Z"}],"euvd":[{"id":"EUVD-2026-68142","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.","status":"published","published":"2026-08-30T00:18:05Z","modified":"2026-08-31T17:03:22Z","cvss":[{"version":"4.0","score":5.9,"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","level":"medium"}],"updated_at":"2026-11-02T18:01:20.704822Z"}],"nvd":[{"id":"CVE-2026-75847","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.","status":"published","published":"2026-08-30T01:20:24.617Z","modified":"2026-09-01T21:15:00.147Z","cvss":[{"version":"4.0","score":5.9,"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/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"medium","assessor":"secondary"}],"cwes":["CWE-312"],"updated_at":"2026-11-02T14:12:42.691315Z"}],"osv":[{"id":"CVE-2026-75847","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.","status":"published","published":"2026-08-30T00:18:05.39Z","modified":"2026-10-28T02:31:09.390853647Z","cvss":[{"version":"4.0","score":5.9,"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","level":"medium"}],"cwes":["CWE-312"],"updated_at":"2026-11-02T15:45:17.102988Z"},{"id":"EEF-CVE-2026-75847","title":"Sensitive attribute values stored in a non-sensitive public changes map in AshPaperTrail","description":"## Summary\n\nCleartext 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.\n\n## Configurations\n\nThe 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.","status":"published","published":"2026-08-30T00:18:05.39Z","modified":"2026-09-08T02:15:03.056163959Z","cvss":[{"version":"4.0","score":5.9,"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","level":"medium"}],"cwes":["CWE-312"],"updated_at":"2026-11-02T15:46:33.520522Z"}]}}
