CVE-2024-39701

Source
https://cve.org/CVERecord?id=CVE-2024-39701
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-39701.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2024-39701
Aliases
Published
2024-07-08T16:43:01.595Z
Modified
2026-03-14T12:35:03.143883Z
Severity
  • 6.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N CVSS Calculator
Summary
Directus Incorrectly handles _in` filter
Details

Directus is a real-time API and App dashboard for managing SQL database content. Directus >=9.23.0, <=v10.5.3 improperly handles _in, nin operators. It evaluates empty arrays as valid so expressions like {"role": {"in": $CURRENTUSER.somefield}} would evaluate to true allowing the request to pass. This results in Broken Access Control because the rule fails to do what it was intended to do: Pass rule if field matches any of the values. This vulnerability is fixed in 10.6.0.

Database specific
{
    "cwe_ids": [
        "CWE-284"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/39xxx/CVE-2024-39701.json",
    "cna_assigner": "GitHub_M"
}
References

Affected packages

Git / github.com/directus/directus

Affected ranges

Type
GIT
Repo
https://github.com/directus/directus
Events

Affected versions

v10.*
v10.0.0
v10.1.0
v10.1.1
v10.2.0
v10.2.1
v10.3.0
v10.4.0
v10.4.2
v10.4.3
v10.5.0
v10.5.1
v10.5.2
v10.5.3
v9.*
v9.23.0
v9.23.1
v9.23.2
v9.23.3
v9.23.4
v9.24.0
v9.25.0
v9.25.1
v9.25.2
v9.26.0

Database specific

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