GHSA-g273-wppx-82w4
Pimcore Customer Data Framework Improper Access Control allows unprivileged user to access GDPR extracts
Quick fix
GHSA-g273-wppx-82w4 — pimcore/customer-management-framework-bundle: upgrade to the fixed version with the command below.
composer require pimcore/customer-management-framework-bundle:^4.0.6Details
### Summary An authenticated and unauthorized user can access the GDPR data extraction feature and query over the information returned, leading to customer data exposure.
### Details Permissions do not seem to be enforced when reaching the `/admin/customermanagementframework/gdpr-data/search-data-objects` endpoint allowing an authenticated user without the permissions to access the endpoint and query the data available there. It seems that the access control is not enforced in this place : <https://github.com/pimcore/customer-data-framework/blob/b4af625ef327c58d05ef7cdf145fa749d2d4195e/src/Controller/Admin/GDPRDataController.php#L38>
### PoC
In order to reproduce the issue, the following steps can be followed:
1. As an administrator : a. Create a role without any permission through Settings → User & Roles → Roles in the administration panel b. Create an user through Settings → User & Roles → Users and assign it the unprivileged role previously created 2. Log out the current administrator and log in with this new user 3. Access to the following endpoint `https://pimcore_instance/admin/customermanagementframework/gdpr-data/search-data-objects?id=&firstname=&lastname=&email=&page=1&start=0&limit=50` and the results will be returned to this unauthorized user.
### Impact An unauthorized user can access PII data from customers without being authorized to.
Are you affected?
Enter the version of the package you're using.
Affected packages
0Fixed in: 4.0.6composer require pimcore/customer-management-framework-bundle:^4.0.6References
- https://github.com/pimcore/customer-data-framework/security/advisories/GHSA-g273-wppx-82w4[WEB]
- https://nvd.nist.gov/vuln/detail/CVE-2024-21667[ADVISORY]
- https://github.com/pimcore/customer-data-framework/commit/6c34515be2ba39dceee7da07a1abf246309ccd77[WEB]
- https://github.com/pimcore/customer-data-framework[PACKAGE]
- https://github.com/pimcore/customer-data-framework/blob/b4af625ef327c58d05ef7cdf145fa749d2d4195e/src/Controller/Admin/GDPRDataController.php#L38[WEB]