Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable, no privileges or interaction required; scope unchanged; integrity-only impact at Low pending independent RCE impact verification.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
2DescriptionCVE.org
A security vulnerability has been detected in RubyLouvre avalon up to 2.2.10. The impacted element is an unknown function of the file src/filters/index.js of the component Template Filter Handler. Such manipulation leads to improperly controlled modification of object prototype attributes. It is possible to launch the attack remotely. The exploit has been disclosed publicly and may be used. The vendor was contacted early about this disclosure but did not respond in any way.
AnalysisAI
Prototype pollution in RubyLouvre Avalon's Template Filter Handler (src/filters/index.js) allows remote unauthenticated attackers to modify JavaScript Object.prototype attributes by supplying crafted template filter input. All versions through 2.2.10 are affected per the CPE range cpe:2.3:a:rubylouvre:avalon:*:*:*:*:*:*:*:*. No vendor patch exists - the maintainer did not respond to coordinated disclosure - and a public exploit is available on GitHub (OriginSecurityX/avalon-filter-rce), which the repository title characterizes as capable of remote code execution, a materially more severe claim than the CVSS 4.0 VI:L rating assigned by the reporter.
Technical ContextAI
RubyLouvre Avalon is a JavaScript MVVM framework. The vulnerable component is the template filter subsystem located in src/filters/index.js, which processes user-supplied template expressions at render time. CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes) describes a class of JavaScript vulnerabilities colloquially known as prototype pollution, where unsanitized property keys such as __proto__, constructor, or prototype allow an attacker to inject or overwrite properties on Object.prototype - the root prototype shared by virtually every JavaScript object in the runtime. Because inherited properties propagate to all downstream objects, pollution can silently corrupt application logic, bypass access checks, or, in server-side Node.js contexts, escalate to remote code execution through gadget chains in co-loaded libraries. The affected CPE cpe:2.3:a:rubylouvre:avalon:*:*:*:*:*:*:*:* covers the entire Avalon release line through 2.2.10 without version floor, implying all published releases are vulnerable.
RemediationAI
No vendor-released patch has been identified at time of analysis - the vendor did not respond to coordinated disclosure, and no fixed version appears in the available references or CPE data. Upstream fix status should be monitored via the VulDB entry at https://vuldb.com/vuln/370851. In the absence of a patch, defenders should take the following specific compensating controls: (1) Remove or sandbox any application feature that passes user-controlled strings into Avalon template filter expressions, as the vulnerable code path requires filter handler invocation with attacker input; this may break template-driven UI features but eliminates the attack surface. (2) Implement a server-side input validation layer that rejects strings containing __proto__, constructor, or prototype as property key segments before they reach the Avalon filter pipeline; note that bypass via Unicode normalization or encoding is possible and requires thorough sanitization. (3) If Avalon is used in a Node.js server-side rendering context, apply Object.freeze(Object.prototype) at application startup to harden the prototype chain against mutation; this is a partial mitigation with known compatibility caveats for libraries that write to Object.prototype intentionally. (4) Consider replacing Avalon with an actively maintained MVVM framework, as maintainer non-responsiveness to a critical disclosure is a project health risk beyond this specific CVE.
More in Prototype Pollution
View allPrototype pollution in Adobe Acrobat Reader versions 24.001.30356, 26.001.21367 and earlier enables arbitrary code execu
Prototype pollution in the farinspace Partners WordPress plugin (versions up to and including 0.2.0) enables remote unau
Prototype pollution vulnerability in 'deephas' versions 1.0.0 through 1.0.5 allows attacker to cause a denial of service
A Prototype Pollution issue in Cronvel Tree-kit v.0.7.4 and before allows a remote attacker to execute arbitrary code vi
A Prototype Pollution issue in Aliconnect /sdk v.0.0.6 allows an attacker to execute arbitrary code via the aim function
All versions of the package safe-eval are vulnerable to Prototype Pollution via the safeEval function, due to improper s
This affects the package vm2 before 3.9.4 via a Prototype Pollution attack vector, which can lead to execution of arbitr
Prototype Pollution in chargeover redoc v2.0.9-rc.69 allows attackers to execute arbitrary code or cause a Denial of Ser
alizeait unflatto <= 1.0.2 was discovered to contain a prototype pollution via the method exports.unflatto at /dist/inde
A vulnerability exists in the 'dagre-d3-es' Node.js package version 7.0.9, specifically within the 'bk' module's addConf
A Prototype Pollution vulnerability in the util-deps.addFileDepend function of magix-combine-ex versions thru 1.2.10 all
Chartist 1.x through 1.3.0 allows Prototype Pollution via the extend function. Rated critical severity (CVSS 9.8), this
Same technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-36683
GHSA-785f-3qgq-ghq3