Description
countly-server is the server-side part of Countly, a product analytics solution. Prior to 24.05.50 and 25.03.44, the authenticated data-migration deletion route in plugins/data_migration/api/api.js passes the user-controlled exportid to clean_up_data without path validation. plugins/data_migration/api/data_migration_helper.js concatenates that identifier into a path resolved outside the intended import directory and calls remove recursively, allowing an application administrator or user with migration permission to delete writable files or directory trees and cause data loss or service disruption. This issue is fixed in versions 24.05.50 and 25.03.44.
References6
- github.com/Countly/countly-server/blob/master/CHANGELOG.md#vers…
- github.com/Countly/countly-server/commit/764e2a1d86f9af600113f7…
- github.com/Countly/countly-server/commit/b652ee8dafa91602705004…
- github.com/Countly/countly-server/releases/tag/24.05.50
- github.com/Countly/countly-server/releases/tag/25.03.44
- github.com/Countly/countly-server/security/advisories/GHSA-5pmc…
Metrics
- CVSS 3.1
-
8.1
HIGH
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H - EPSS — exploit probability
- 0% percentile: 41 · as of 10 November 2026
- CWE
- CWE-22
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.