Description
Translate is a package that allows users to convert text to different languages on Node.js and the browser. Prior to version 3.0.0, an attacker controlling the second variable of the `translate` function is able to perform a cache poisoning attack. They can change the outcome of translation requests made by subsequent users. The `opt.id` parameter allows the overwriting of the cache key. If an attacker sets the `id` variable to the cache key that would be generated by another user, they can choose the response that user gets served. Version 3.0.0 fixes this issue.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:NWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| franciscop | translate | < 3.0.0 |
| franciscop | translate | < 3.0.0 |
References
- https://github.com/franciscop/translate/commit/7a2bf8b9f05f7c45c09683973ef4d8e995804aa4Patch
- https://github.com/franciscop/translate/commit/cc1ba03078102f83e0503a96f1a081489bb865d3Patch
- https://github.com/franciscop/translate/security/advisories/GHSA-882j-4vj5-7vmjExploit, Vendor Advisory
- https://github.com/franciscop/translate/commit/7a2bf8b9f05f7c45c09683973ef4d8e995804aa4Patch
- https://github.com/franciscop/translate/commit/cc1ba03078102f83e0503a96f1a081489bb865d3Patch
- https://github.com/franciscop/translate/security/advisories/GHSA-882j-4vj5-7vmjExploit, Vendor Advisory
Timeline
- Published
- Mar 22, 2024
- Last modified
- Jun 17, 2026
- NVD status
- Analyzed