| tiêu đề | jsonata-js jsonata 2.2.0 Prototype Pollution |
|---|
| Mô tả | JSONata's function binding frame system creates bindings using a plain object ({}) and assigns values with bindings[name] = value without prototype chain validation. The for...in loop in the user bindings handler and createFrameFromTuple traverses the prototype chain, allowing attackers to override built-in functions. A novel bypass exists: passing a hasOwnProperty property in user bindings shadows the inherited Object.prototype.hasOwnProperty, bypassing the lookup() security check. This affects 63 built-in functions including $sum, $count, $eval, etc. |
|---|
| Nguồn | ⚠️ https://github.com/OriginSecurityX/jsonata-hasownproperty-bypass |
|---|
| Người dùng | Frederick (UID 98351) |
|---|
| Đệ trình | 18/05/2026 11:57 (cách đây 5 các tháng) |
|---|
| Kiểm duyệt | 14/06/2026 14:25 (27 days later) |
|---|
| Trạng thái | được chấp nhận |
|---|
| Mục VulDB | 370850 [jsonata-js jsonata đến 2.2.0 Function Binding Frame System src/jsonata.js createFrame] |
|---|
| điểm | 20 |
|---|