CVE-2026-82747

Source
https://cve.org/CVERecord?id=CVE-2026-82747
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-82747.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-82747
Aliases
Published
2026-09-01T04:14:57Z
Modified
2026-09-04T11:45:46Z
Severity
  • 5.9 (Medium) CVSS_V4 - 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 CVSS Calculator
Summary
Ash.Policy.Authorizer returns records denied by a runtime read policy to any actor
Details

Incorrect Authorization vulnerability in ash-project ash returns records that a runtime read policy denies to any actor.

When a resource has an access_type :runtime read policy (a check evaluated per record rather than compiled to a filter), Ash.Policy.Authorizer decides each record in check_result/1 (lib/ash/policy/authorizer/authorizer.ex) by discarding impossible policy scenarios and inspecting what remains. When every scenario for a record was impossible, meaning no policy can authorize it and it must be forbidden, the empty-scenario branch instead kept the record ({[record | data], authorizer, any_forbidden?}) and returned it as authorized. As a result, records the runtime read policy denies are returned to any actor. The fix forbids a record whose scenarios are all impossible.

This issue affects ash: from 3.4.44 before 3.32.2.

Database specific
{
    "cna_assigner":  "EEF",
    "cwe_ids":  [
        "CWE-863"
    ],
    "osv_generated_from":  "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/82xxx/CVE-2026-82747.json",
    "unresolved_ranges":  [
        {
            "extracted_events":  [
                {
                    "introduced":  "f4a8ff53fd3b974468d73685cd3fc842ef893de3"
                },
                {
                    "fixed":  "6eddb8ab26e45023faf0c79ebd152bb40aefda02"
                }
            ],
            "source":  "AFFECTED_FIELD"
        }
    ]
}
References

Affected packages

Git / github.com/ash-project/ash

Affected ranges

Type
GIT
Repo
https://github.com/ash-project/ash
Events
Database specific
Show details
{
    "extracted_events":  [
        {
            "introduced":  "3.4.44"
        },
        {
            "fixed":  "3.32.2"
        }
    ],
    "source":  [
        "DESCRIPTION",
        "REFERENCES"
    ]
}

Affected versions

3.*
3.4.56
v3.*
v3.10.0
v3.10.1
v3.11.0
v3.11.1
v3.11.2
v3.11.3
v3.12.0
v3.13.0
v3.13.1
v3.13.2
v3.14.0
v3.14.1
v3.15.0
v3.16.0
v3.17.0
v3.17.1
v3.18.0
v3.19.0
v3.19.1
v3.19.2
v3.19.3
v3.20.0
v3.21.0
v3.21.1
v3.21.2
v3.21.3
v3.22.0
v3.22.1
v3.22.2
v3.23.0
v3.23.1
v3.24.0
v3.24.1
v3.24.2
v3.24.3
v3.24.4
v3.24.5
v3.24.6
v3.24.7
v3.25.0
v3.25.1
v3.25.2
v3.26.0
v3.27.0
v3.27.1
v3.27.2
v3.27.3
v3.27.4
v3.27.6
v3.27.7
v3.27.8
v3.28.0
v3.29.0
v3.29.1
v3.29.2
v3.29.3
v3.30.0
v3.30.1
v3.31.0
v3.31.1
v3.31.2
v3.31.3
v3.32.1
v3.4.44
v3.4.45
v3.4.46
v3.4.47
v3.4.48
v3.4.50
v3.4.51
v3.4.53
v3.4.54
v3.4.55
v3.4.56
v3.4.57
v3.4.58
v3.4.59
v3.4.61
v3.4.62
v3.4.63
v3.4.64
v3.4.65
v3.4.66
v3.4.67
v3.4.68
v3.4.69
v3.4.70
v3.4.71
v3.4.72
v3.4.73
v3.5.1
v3.5.10
v3.5.11
v3.5.12
v3.5.13
v3.5.14
v3.5.15
v3.5.16
v3.5.17
v3.5.18
v3.5.19
v3.5.2
v3.5.21
v3.5.22
v3.5.23
v3.5.24
v3.5.25
v3.5.26
v3.5.27
v3.5.28
v3.5.29
v3.5.3
v3.5.30
v3.5.31
v3.5.32
v3.5.33
v3.5.35
v3.5.36
v3.5.37
v3.5.38
v3.5.39
v3.5.4
v3.5.41
v3.5.42
v3.5.43
v3.5.5
v3.5.6
v3.5.7
v3.5.8
v3.6.0
v3.6.1
v3.6.2
v3.6.3
v3.7.0
v3.7.1
v3.7.2
v3.7.3
v3.7.4
v3.7.5
v3.7.6
v3.8.0
v3.9.0

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-82747.json"