Skip to main content

FreeScout CVE-2026-53592

| EUVDEUVD-2026-46082 MEDIUM
Improperly Controlled Modification of Object Prototype Attributes (Prototype Pollution) (CWE-1321)
2026-07-20 GitHub_M
4.6
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain low-privilege FreeScout account
  2. Delivery
    Craft URL with nested bracket `__proto__` query parameter
  3. Exploit
    Deliver malicious URL to target authenticated user
  4. Execution
    Victim browser loads main.js and parses query string
  5. Persist
    Object.prototype polluted in victim browser session
  6. Impact
    Injected properties alter client-side application logic

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V3 - Web Frontend Security Prototype pollution prevention
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the attacker to hold at minimum a low-privilege authenticated FreeScout account (confirmed by PR:L in the CVSS vector). The victim must actively visit a crafted URL that causes main.js to parse attacker-controlled query parameters - a deliberate user interaction step (confirmed by UI:R). The vulnerable surface is any FreeScout page that loads /public/js/main.js, which covers standard help desk views; no special non-default server configuration is required for the client-side code to execute. Exploitation is bounded by: (1) the need for an existing authenticated account, limiting anonymous internet-facing abuse; (2) required victim interaction, preventing fully automated exploitation; and (3) scope limited to the victim's browser session (S:U), meaning the server itself and other users' sessions are not directly affected. Organizations restricting FreeScout to internal or VPN-only access further reduce the exploitable population.

Impact

The CVSS 3.1 score of 4.6 (Medium) with vector AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L correctly captures the real-world constraints: high attack complexity reflects the need to deliver a crafted URL to a victim, required user interaction limits opportunistic mass exploitation, and the low-privilege authentication prerequisite narrows the attacker pool to existing FreeScout users. Scope is unchanged (S:U), confining impact to the victim's browser session rather than the server. No EPSS score data was provided in the input, preventing probability-based triage. The vulnerability is not listed in CISA KEV, and no public exploit code has been identified. A notable compounding risk factor is patch confusion: organizations that applied the 1.8.139 incomplete fix may incorrectly believe they are fully remediated. Prototype pollution alone rarely achieves critical impact without chaining to a downstream vulnerability, so realistic risk is moderate-to-low for well-monitored environments, but the bypass-of-existing-fix angle warrants prompt patching over deferral.

Exploit ScenarioDerived

An authenticated low-privilege FreeScout user (e.g., a support agent) crafts a URL such as https://helpdesk.example.com/conversations?b[__proto__][polluted]=PWNED and delivers it to a colleague or administrator via internal chat or email. When the victim clicks the link and the page loads main.js, getQueryParam parses the nested query key and writes the attacker-controlled value into Object.prototype, injecting a polluted property into every subsequently created JavaScript object in that browser session, which could be leveraged to alter application behavior or escalate to further client-side attacks. No public POC is currently known, but the nested __proto__ bypass technique is thoroughly documented in open security research.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 20, 2026

Prototype Pollution in FreeScout's client-side getQueryParam function allows an authenticated attacker to write arbitrary properties into Object.prototype via crafted URL query strings on any page loading main.js. An initial mitigation introduced in version 1.8.139 blocked direct top-level __proto__ keys but failed to sanitize nested bracket-notation bypass forms such as b[__proto__][polluted]=PWNED, leaving all installations between 1.8.139 and 1.8.222 still exploitable. The complete fix shipped in version 1.8.223; no public exploit or active exploitation is confirmed at time of analysis.

RemediationAI

Upgrade FreeScout to version 1.8.223 or later, which contains the complete updated fix for the prototype pollution bypass; the vendor advisory is at https://github.com/freescout-help-desk/freescout/security/advisories/GHSA-w5fc-8pp3-f755. Installations already on version 1.8.139 through 1.8.222 are still vulnerable and must upgrade - the prior fix is insufficient. If an immediate upgrade is not feasible, deploy a web application firewall rule to reject or strip URL query parameters containing __proto__ in any bracket-notation form (e.g., matching [__proto__] as a substring), though aggressive WAF rules on query strings risk breaking legitimate parameterized URLs and should be tested thoroughly. Additionally, restricting FreeScout access to internal networks or VPN reduces the reachable attacker surface given the PR:L requirement, though this is a defense-in-depth measure, not a substitute for patching.

Affected VersionsENISA

freescout < 1.8.223

Affected Packages

euvd freescout fix: 1.8.223

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

FreeScout is a self-hosted, open-source help desk and shared inbox application built on PHP's Laravel framework. The vulnerability resides in the client-side JavaScript function getQueryParam within /public/js/main.js, which parses URL query parameters and passes them into JavaScript object structures without adequate sanitization. CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes - Prototype Pollution) describes the root cause: an attacker-controlled key traverses the prototype chain through an intermediate property (e.g., b[__proto__]), ultimately writing into the global Object.prototype. The naive first-pass fix checked only for a top-level literal __proto__ key, which is a well-documented bypass pattern in prototype pollution research. Any JavaScript code in the victim's browser session that later accesses inherited properties may encounter attacker-injected values, potentially altering application logic. The affected CPE is cpe:2.3:a:freescout-help-desk:freescout:*:*:*:*:*:*:*:*.

Know when Freescout gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 4.6 MEDIUM
AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L
vuln.today AI 4.6 MEDIUM

Requires authenticated low-privilege account (PR:L) and victim to visit crafted URL (UI:R); high complexity (AC:H) due to social delivery requirement; impact confined to victim browser session (S:U) with limited CIA.

3.1 AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L
4.0 AV:N/AC:H/AT:N/PR:L/UI:A/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Privileges Required
Low
User Interaction
Required
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
Low

Lifecycle Timeline

1
Patch available
Jul 20, 2026 - 21:17 EUVD

DescriptionCVE.org

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.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Low
niche self-hosted open-source help desk, limited enterprise adoption
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

23
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +23
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-28289 CRITICAL POC
10.0 Mar 03

File upload bypass in FreeScout 1.8.206 — patch bypass for CVE-2026-27636. PoC and patch available. CVSS 10.0.

CVE-2026-27636 HIGH POC
8.8 Feb 25

Remote code execution in FreeScout prior to version 1.8.206 allows authenticated users to upload `.htaccess` files that

CVE-2026-27637 CRITICAL POC
9.8 Feb 25

Predictable password reset tokens in FreeScout help desk before 1.8.206. Weak random number generation allows attackers

CVE-2026-53595 CRITICAL POC
9.4 Jul 20

Anonymous account takeover in FreeScout help desk before 1.8.224 lets an unauthenticated attacker seize the lowest-id ac

CVE-2024-29185 CRITICAL POC
9.0 Mar 22

FreeScout is a self-hosted help desk and shared mailbox. Rated critical severity (CVSS 9.0), this vulnerability is remot

CVE-2025-58163 HIGH POC
8.6 Sep 03

FreeScout is a free help desk and shared inbox built with PHP's Laravel framework. Rated high severity (CVSS 8.6), this

CVE-2024-29184 HIGH POC
8.0 Mar 22

FreeScout is a self-hosted help desk and shared mailbox. Rated high severity (CVSS 8.0), this vulnerability is remotely

CVE-2024-28186 HIGH POC
7.1 Mar 12

FreeScout is an open source help desk and shared inbox built with PHP. Rated high severity (CVSS 7.1), this vulnerabilit

CVE-2024-34698 MEDIUM POC
6.3 May 14

FreeScout is a free, self-hosted help desk and shared mailbox. Rated medium severity (CVSS 6.3), this vulnerability is r

CVE-2024-34697 MEDIUM POC
6.1 May 14

FreeScout is a free, self-hosted help desk and shared mailbox. Rated medium severity (CVSS 6.1), this vulnerability is r

CVE-2026-32754 CRITICAL
9.3 Mar 19

A stored cross-site scripting (XSS) vulnerability exists in FreeScout help desk software versions 1.8.208 and below, whe

CVE-2026-41193 CRITICAL
9.1 Apr 21

Arbitrary file write in FreeScout (prior to 1.8.215) allows authenticated administrators to achieve remote code executio

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy