从这个网页截图中,可以获取到以下关于漏洞的关键信息: 1. 漏洞名称:Prototype Pollution 2. 受影响的包:node-gettext 3. 受影响的版本:所有版本() 4. 引入时间:2023年12月6日 5. CVE编号:CVE-2024-21528 6. CWE编号:CWE-1321 7. 严重性:中等(5.9) 8. 威胁情报:PoC(Proof of Concept) 9. 漏洞描述: - node-gettext是一个JavaScript实现的gettext,一个国际化框架。 - 影响版本通过gettext.js中的addTranslations()函数受到Prototype Pollution的影响,由于用户输入的不适当处理。 10. PoC示例: 11. 如何修复: - 当前没有固定版本的node-gettext。 12. 受影响的环境: - 应用服务器 - Web服务器 - Web浏览器 13. 如何预防: - 使用Object.freeze(Object.prototype)冻结原型。 - 验证JSON输入。 - 避免使用不安全的递归合并函数。 - 考虑使用没有原型的对象(例如,Object.create(null)),打破原型链并防止污染。 - 将Map而不是Object作为最佳实践。 14. 参考链接: - Arteau, Oliver. "JavaScript prototype pollution attack in NodeJS application." GitHub, 26 May 2018 15. CVSS评分**: - Snyk评分:5.9(中等) - 攻击向量(AV):高 - 攻击复杂性(AC):高 - 权限要求(PR):无 - 用户交互(UI):无 - 受影响范围(S):不变 - 机密性(C):无 - 完整性(I):无 - 可用性(A):高 这些信息提供了关于Prototype Pollution漏洞的详细描述,包括其影响、如何利用以及如何预防的方法。