- CVE ID
- CVE-2024-46627
- Type
- Incorrect / broken access control
- Affected
- BECN DATAGERRY v2.2
- Vector
- Unauthenticated REST API
Responsible disclosure
This research was carried out by Solusec and published after coordinated disclosure, with a CVE identifier assigned through the appropriate numbering authority. It is shared for defensive and educational purposes so that affected operators can identify and remediate the issue. We do not publish research to enable misuse.
If you operate an affected product and want help confirming or fixing this, get in touch.
Summary
DATAGERRY v2.2 does not enforce access control on a set of user-settings REST API endpoints. An unauthenticated attacker can read, create, update and delete the settings of any user without valid credentials.
This vulnerability is tracked as CVE-2024-46627. The authoritative record is on the CVE List (CVE-2024-46627), with severity metrics on the National Vulnerability Database.
Affected endpoints
/rest/users/<id>/settings/— GET, POST/rest/users/<id>/settings/<setting>— DELETE, PUT
The behaviour is reproducible against the vendor's Docker setup as of the disclosure date. In testing it was possible to enumerate all settings objects for a user, retrieve a specific settings object, update an existing object, create a new object, and delete an object — all without authentication. Notably, a create operation returned a 500 error yet still persisted the object, confirmed by re-reading the list.
Impact
The endpoints do not filter the stored values, so beyond unauthorised read and write of any user's settings there is scope to inject script content into stored data. The core issue is broken access control on state-changing API endpoints, which undermines the integrity of user configuration across the application.
Remediation
- Enforce authentication and per-user authorisation on every REST endpoint that reads or modifies user data.
- Return consistent status codes and ensure failed operations do not partially persist.
- Validate and encode stored settings values to prevent script injection.
Common questions
What is CVE-2024-46627?
An incorrect-access-control vulnerability in DATAGERRY v2.2. The user-settings REST API endpoints can be reached without authentication, allowing read, create, update and delete of any user's settings.
Which endpoints are affected?
The /rest/users/
Can it be used for more than reading settings?
Yes. The stored values are not filtered, so there is scope to inject script content in addition to full read/write/delete of settings objects for any user.
How was it verified?
Against the vendor's documented Docker setup at the time of disclosure, exercising each operation in turn. It was raised as a CVE through coordinated disclosure.
Related
Solusec
Typically replies within one business day
Had an incident, or need a pen test at short notice?
Tell us what you're dealing with and we'll come back to you.
+44 (0)1902 288763 ✉️ Email us
info@solusec.co.uk 📝 Leave a message
We'll reply within one business day