Vulnerability · Published Jul 20, 2026 · Assigned by GitHub_M
CVE-2026-53592FreeScout vulnerable to prototype pollution in getQueryParam
Medium 4.6
In plain English
A medium-severity prototype pollution in freescout from freescout-help-desk. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.1% (higher than 4% of all known vulnerabilities).
Official description
FreeScout is a free help desk and shared inbox built with PHP's Laravel framework. A Prototype Pollution condition in the `getQueryParam` function `/public/js/main.js` and was addressed in version 1.8.139 by blocking URL query keys matching the pattern `__proto__`. However, this mitigation is incomplete: it only filters top-level `__proto__` keys and fails to sanitize nested forms such as `b[__proto__][polluted]=PWNED`. As a result, an attacker-controlled URL query string can still write into `Object.prototype` on any page that loads `main.js`. Version 1.8.223 contains a updated fix.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| freescout-help-desk | freescout | < 1.8.223 |
Weakness: CWE-1321 · Vector: CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L