CVE-2026-76910: Unleash: Clone-feature lets a user copy a feature from a project they cannot read
Summary
The clone-feature endpoint supports copying features across projects, but it does not verify that the caller can access the source project. A user with create permissions in one project can clone a feature from another project they cannot read and then inspect the copied configuration.
This vulnerability cannot be confirmed without Enterprise access. Report is based on a circumstantial evidence in the open-source repository.
Details src/lib/features/feature-toggle/feature-toggle-service.ts implements cloneFeatureToggle. This operation needs authorization for both sides: permission to read/copy the source feature and permission to create the destination feature.
The clone path validates permissions against the destination project, but not against the source project that owns featureName. Because feature names are globally unique, a caller can reference a feature outside projects they can access.
PoC 1. Create or identify two projects: P1 with a private or restricted feature named secret-feature, and P2 where the attacker has clone/create permissions. 2. Authenticate as the attacker. 3. Send:
http POST /api/admin/projects/P2/features/secret-feature/clone Content-Type: application/json
{ "name": "secret-feature-copy" }
4. Open P2 and inspect secret-feature-copy. Verify if strategy parameters, constraints, variants, and variant payloads from the source feature have been copied.
Impact Users with permissions on one project can disclose feature configuration from another project if they know or guess the source feature name. Feature names could be available in more public applications that have a common SDK access to multiple projects.
Other sources
Unleash is an open-source feature management platform. Prior to 8.0.3, cloneFeatureToggle and POST /api/admin/projects/:projectId/features/:featureName/clone authorize creation in the destination project but do not verify access to the source project. Because feature names are globally unique, a user with create or clone permission in one project who knows or guesses another project's feature name can copy that feature into the authorized project and inspect its strategy parameters, constraints, variants, and variant payloads. This issue is fixed in version 8.0.3.
— MITRE
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
npm/unleash-serverto a version that resolves this vulnerability.Fixed in 8.0.3 - Upgrade
Upgrade
Unleashto a version that resolves this vulnerability.Fixed in 8.0.3
Event History
Frequently Asked Questions
Who can exploit this issue?
A user needs create or clone permission in a project they are authorized to access, plus knowledge of or the ability to guess the feature name in another project. They do not need read access to the source project.
What information can be exposed through a cloned feature?
The copied feature can expose its strategy parameters, constraints, variants, and variant payloads from the source project.
Are deployments before 8.0.3 affected?
Yes. The issue affects versions prior to 8.0.3 and is fixed in version 8.0.3.
How can an organization determine whether it may have been exposed?
Review cloneFeatureToggle and POST requests to /api/admin/projects/:projectId/features/:featureName/clone for cases where the destination project was authorized but the cloned feature originated from a project the requesting user could not read.