CVE-2026-1921 PUBLISHED

Loco Translate <= 2.8.2 - Authenticated (Translator+) Path Traversal to Limited File Read via 'ref' Parameter

Assigner: Wordfence
Reserved: 04.02.2026 Published: 05.05.2026 Updated: 05.05.2026

The Loco Translate plugin for WordPress is vulnerable to Path Traversal in all versions up to, and including, 2.8.2 via the fsReference AJAX route. This is due to the findSourceFile() method normalizing user-supplied ref paths containing ../ directory traversal sequences without validating that the resolved path remains within the intended bundle or content directory. This makes it possible for authenticated attackers, with Translator-level access and above (custom loco_admin capability required, granted to the translator role and administrators by default), to read arbitrary .php, .js, .json, and .twig files from the server filesystem outside the intended translation directory. Files named wp-config.php are excluded.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
CVSS Score: 4.9

Product Status

Vendor timwhitlock
Product Loco Translate
Versions Default: unaffected
  • affected from 0 to 2.8.2 (incl.)

Credits

  • Angus Girvan finder

References

Problem Types

  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') CWE