| 标题 | Node.js compromise 14.15.1 Prototype Pollution |
|---|
| 描述 | compromise version 14.15.1 is affected by a prototype pollution vulnerability through the public root API nlp.extend(plugin). When a plugin object contains a model property, the extension flow recursively merges plugin.model into the internal model. The recursive merge processes attacker-controlled keys without rejecting prototype-pollution primitives such as __proto__, constructor, or prototype.
A crafted plugin model containing __proto__ can cause the merge logic to descend through Object.prototype and assign attacker-controlled properties to the shared prototype. Applications that load or construct Compromise plugins from user-controlled or partially user-controlled input may allow an attacker to pollute Object.prototype, affecting later object property lookups, default options, configuration merging, feature flags, or authorization logic. |
|---|
| 来源 | ⚠️ https://github.com/spencermountain/compromise/issues/1208 |
|---|
| 用户 | wjm1 (UID 98929) |
|---|
| 提交 | 2026-06-11 13時54分 (1 月前) |
|---|
| 管理 | 2026-07-14 07時12分 (1 month later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 378246 [spencermountain compromise 直到 14.15.1 Public Root API src/API/extend.js nlp.extend plugin 权限提升] |
|---|
| 积分 | 20 |
|---|