# CVE-2024-46881: Missing authorization in Enterprise

> Upgrading Develocity from older versions incorrectly resets project access controls, potentially exposing restricted project information to unauthorized users.

- **Severity:** High 7.1 (`CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N`)
- **Exploited in the wild:** Not known
- **Login needed:** Any signed-in user
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** No
- **Published:** 26 Jan 2025
- **Updated:** 27 Jan 2025
- **Also known as:** GHSA-cw76-h7wr-rh77

## What is CVE-2024-46881?

CVE-2024-46881 is a high-severity missing authorization vulnerability in Gradle Enterprise, published on 26 Jan 2025. Any signed-in user can exploit it over the network, with no action from the victim.

### Official description

Develocity (formerly Gradle Enterprise) before 2024.1.8 has Incorrect Access Control. Project-level access control configuration was introduced in Enterprise Config schema version 8. Migration functionality from schema version 8 to versions 9 and 10 (in affected vulnerable versions) does not include the projects section of the configuration. This leads to all of the project settings being reset to their defaults when the old schema is loaded. In the case of projects.enabled, the default is false. Thus, using an enterprise config v8 results in Project level access control being disabled, even if it was previously enabled, and previously restricted project information disclosed. Most commonly, this occurs when a Develocity instance is upgraded from an earlier version. Specifically, this occurs if: Develocity 2023.3.X is upgraded to 2023.4.X; Develocity 2023.3.X is upgraded to 2024.1.X up to and including 2024.1.7; or Develocity 2023.4.X is upgraded to 2024.1.X up to and including 2024.1.7. The flaw does not occur when upgrading to a fixed version. An upgrade can only be triggered via administrator access, and cannot be forced by an external attacker.

Weakness: CWE-732 (Incorrect Permission Assignment for Critical Resource)

## Which versions are affected by CVE-2024-46881?


## How do I fix CVE-2024-46881?

No fix has been published for CVE-2024-46881 yet. Limit exposure of the affected software until one is available.

## Is CVE-2024-46881 being exploited?

There is no known exploitation of CVE-2024-46881 in the wild and no public exploit code.

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2024-46881 and fix it if it is affected.

What it is: CVE-2024-46881 is a high-severity missing authorization vulnerability in Gradle Enterprise, published on 26 Jan 2025. Any signed-in user can exploit it over the network, with no action from the victim.
Exploitation: There is no known exploitation of CVE-2024-46881 in the wild and no public exploit code.

Affected product: Gradle Enterprise. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2024-46881/ (Markdown: https://insights.sbomify.com/CVE-2024-46881/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2024-46881
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2024-46881
- OSV: https://osv.dev/vulnerability/CVE-2024-46881

---
From sbomify Insights: https://insights.sbomify.com/CVE-2024-46881/
Summaries are generated and may contain mistakes; the official description above is the record.
