CVE-2026-82723: CWE-532 Insertion of Sensitive Information into Log File in team-alembic ash_authentication
Insertion of Sensitive Information into Log File vulnerability in team-alembic AshAuthentication allows disclosure of user password digests to readers of the audit store. The audit_log add-on builds each entry's extra_data in AshAuthentication.AddOn.AuditLog.Auditor.build_extra_data/4, which takes :actor from the action callback context verbatim. Any audited action invoked with actor: set to a user record therefore deposits that record, including its hashed_password attribute, into the audit entry. The same module already collapses the audited identity to an opaque string via AshAuthentication.user_to_subject/1 and filters params against the strategy's configured allow-list, so the actor is the only stored value that reaches the audit store unfiltered. Marking the attribute sensitive?: true does not help, because that redacts inspect/1 output rather than JSON encoding or raw-term storage. There is no attacker-controlled trigger and no network disclosure path: entries accumulate from ordinary authenticated activity, and an attacker's own requests deposit only their own digest. Exploitation requires independent read access to the audit store, such as database credentials, an audit role, a backup, or a log shipper, at which point the digests support offline password attack against every active account. Whether the material persists depends on the data layer, since raw-term stores keep it verbatim while a SQL store raises Protocol.UndefinedError and drops the entry unless the user resource derives Jason.Encoder. This issue affects ash_authentication: from 4.12.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.2.
AI Analysis
Technical Summary
The vulnerability arises from the audit_log add-on in ash_authentication building audit entries that include the :actor field verbatim from the action callback context. When the actor is a user record, the entire record, including the hashed_password attribute, is stored in the audit log. Other audited identity fields are filtered or redacted, but the actor field is not, leading to sensitive information disclosure in the audit store. There is no direct attacker-controlled trigger or network disclosure vector; exploitation requires independent read access to the audit store, such as database credentials or audit roles. The persistence of this sensitive data depends on the data layer implementation. The vulnerability affects ash_authentication versions >=4.12.0 <4.15.0 and >=5.0.0-rc.0 <5.0.0-rc.2.
Potential Impact
If an attacker gains read access to the audit store, they can obtain hashed user passwords, enabling offline password attacks against all active accounts. However, there is no direct network-based exploitation or attacker-controlled input that triggers this vulnerability. The impact is limited to confidentiality loss of password digests stored in audit logs, which requires additional privileges to access.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the audit store to trusted personnel only. Avoid configuring audit actions with the actor set to full user records. Monitor vendor communications for updates or patches addressing this issue.
CVE-2026-82723: CWE-532 Insertion of Sensitive Information into Log File in team-alembic ash_authentication
Description
Insertion of Sensitive Information into Log File vulnerability in team-alembic AshAuthentication allows disclosure of user password digests to readers of the audit store. The audit_log add-on builds each entry's extra_data in AshAuthentication.AddOn.AuditLog.Auditor.build_extra_data/4, which takes :actor from the action callback context verbatim. Any audited action invoked with actor: set to a user record therefore deposits that record, including its hashed_password attribute, into the audit entry. The same module already collapses the audited identity to an opaque string via AshAuthentication.user_to_subject/1 and filters params against the strategy's configured allow-list, so the actor is the only stored value that reaches the audit store unfiltered. Marking the attribute sensitive?: true does not help, because that redacts inspect/1 output rather than JSON encoding or raw-term storage. There is no attacker-controlled trigger and no network disclosure path: entries accumulate from ordinary authenticated activity, and an attacker's own requests deposit only their own digest. Exploitation requires independent read access to the audit store, such as database credentials, an audit role, a backup, or a log shipper, at which point the digests support offline password attack against every active account. Whether the material persists depends on the data layer, since raw-term stores keep it verbatim while a SQL store raises Protocol.UndefinedError and drops the entry unless the user resource derives Jason.Encoder. This issue affects ash_authentication: from 4.12.0 before 4.15.0 and from 5.0.0-rc.0 before 5.0.0-rc.2.
CVSS v4.0
Score 1.8low
Affected software
team-alembic
ash_authentication
team-alembic
ash_authentication
pkg:hex/ash_authenticationpkg:github/team-alembic/ash_authenticationcpe:2.3:a:team-alembic:ash_authentication:*:*:*:*:*:*:*:*Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability arises from the audit_log add-on in ash_authentication building audit entries that include the :actor field verbatim from the action callback context. When the actor is a user record, the entire record, including the hashed_password attribute, is stored in the audit log. Other audited identity fields are filtered or redacted, but the actor field is not, leading to sensitive information disclosure in the audit store. There is no direct attacker-controlled trigger or network disclosure vector; exploitation requires independent read access to the audit store, such as database credentials or audit roles. The persistence of this sensitive data depends on the data layer implementation. The vulnerability affects ash_authentication versions >=4.12.0 <4.15.0 and >=5.0.0-rc.0 <5.0.0-rc.2.
Potential Impact
If an attacker gains read access to the audit store, they can obtain hashed user passwords, enabling offline password attacks against all active accounts. However, there is no direct network-based exploitation or attacker-controlled input that triggers this vulnerability. The impact is limited to confidentiality loss of password digests stored in audit logs, which requires additional privileges to access.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the audit store to trusted personnel only. Avoid configuring audit actions with the actor set to full user records. Monitor vendor communications for updates or patches addressing this issue.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- EEF
- Date Reserved
- 2026-08-31T00:59:08.960Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6aabe86855bf5e2cf56c51c2
Added to database: 09/17/2026, 13:17:28 UTC
Last enriched: 09/17/2026, 13:32:15 UTC
Last updated: 09/18/2026, 00:53:18 UTC
Views: 9
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.