CVE-2026-82744

Ash.Reactor change step fails open, skipping a change when its where guard raises

State
Published
Severity
2.1 Low
Published
Sep 1, 2026
Updated
Sep 1, 2026
Reserved
Aug 31, 2026

Read the record on cve.org

Description

Not Failing Securely (Failing Open) vulnerability in ash-project ash skips an Ash.Reactor change when the guard controlling it raises, so a change meant to run does not.

An Ash.Reactor change step can be gated by where validations that decide whether the change runs. Ash.Reactor.ChangeStep (lib/ash/reactor/steps/change_step.ex) evaluated those guards in apply_where_clauses/3, and apply_validation rescued any exception into {:error, error}. The reduce treated that identically to a guard whose condition was simply not met and bypassed the change. So when a guard raises (for example on attacker-influenced input), a change that enforces a security-relevant modification is skipped rather than failing the step. The fix distinguishes a raised exception (now {:raised, error}) and halts the step with an error, failing closed.

This issue affects ash: from 3.0.0-rc.17 before 3.32.2.

Scores

CVSSScoreVectorSource
4.02.1 LowCVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:NEEF

Weaknesses

  • CWE-636 Not Failing Securely ('Failing Open')

Affected Products

ProductVersions
ashash-project
  • 3.0.0-rc.17 to before 3.32.2Affected
ashash-project
  • 321f43bd05ad9544e693cbf797243693e51a6be4 to before 6d2eb86ea8d2ba5ffac89c1b8b9bf46e331feabcAffected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.