OSV 1.4.0 · github-reviewed · 修改于 2026-08-01 03:10
发布时间
2026-08-01 03:10
GitHub 审查时间
2026-08-01 03:10
NVD 发布时间
2026-07-02 05:17
源文件
advisories/github-reviewed/2026/07/GHSA-5957-5c94-3v7w/GHSA-5957-5c94-3v7w.json
Jodit.configure(options) — and the internal ConfigMerge / ConfigProto helpers — merged user-supplied options into the editor configuration without filtering prototype-mutating keys. A payload nested under an existing plain-object option such as controls could reach and mutate Object.prototype (prototype pollution).
jodit (npm)< 4.12.18Jodit.configure(options)import { Jodit } from 'jodit';
delete Object.prototype.polluted;
Jodit.configure(JSON.parse('{"controls":{"__proto__":{"polluted":"yes"}}}'));
console.log(({}).polluted); // "yes" (before the fix)
delete Object.prototype.polluted;
Applications that pass user-controlled or partially user-controlled configuration into Jodit.configure() could be vulnerable to prototype pollution: unexpected property injection, logic bypass, denial of service, or secondary security issues.
Fixed in 4.12.18 by rejecting __proto__, constructor, and prototype at every merge level in ConfigMerge and ConfigProto.
Responsibly reported by Junming Wu.