제출 #884187: Ractive.js ractive 1.4.4 Prototype Pollution정보

제목Ractive.js ractive 1.4.4 Prototype Pollution
설명A prototype pollution vulnerability exists in Ractive 1.4.4. Ractive exposes public keypath setter APIs such as Ractive#set(). The API accepts string keypaths and keypath maps. During assignment, Ractive splits the provided keypath, resolves intermediate models, and eventually writes the value to the resolved parent object. Prototype-related path segments such as proto, constructor, and prototype are not rejected before the write. A crafted keypath such as proto.polluted can therefore cause writes to Object.prototype. After exploitation, newly created plain objects may inherit attacker-controlled properties. The issue was reproduced through public Ractive setter APIs. Additional impact was observed through inherited configuration properties: after polluting Object.prototype.template or Object.prototype.data, later Ractive instances may consume inherited values during initialization, depending on how the application constructs component options. Affected version: Ractive 1.4.4 Impact: Prototype pollution through public keypath setter APIs. Exploitability depends on applications passing untrusted or partially trusted keypaths, keypath maps, dynamic form fields, state sync updates, plugin data, API-driven UI state, or JSON-patch-style updates into Ractive setter APIs. Recommended fix: Reject __proto__, constructor, and prototype path segments in all keypath write APIs. Avoid writing through inherited prototype objects. Use own-property checks when reading initialization options such as template and data.
원천⚠️ https://github.com/ractivejs/ractive/issues/3448
사용자
 wjm3 (UID 99672)
제출2026. 07. 09. PM 03:00 (2 개월 ago)
모더레이션2026. 08. 23. PM 06:07 (2 months later)
상태수락
VulDB 항목394565 [ractivejs ractive 까지 1.4.4 Keypath Ractive#set 원격 코드 실행]
포인트들20

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!