中危 Ruby Sanitize < 5.2.1 可被绕过
CVE编号
CVE-2020-4054利用情况
POC 已公开补丁情况
官方补丁披露时间
2020-06-17漏洞描述
在Sanitize(RubyGem Sanitize)大于或等于3.0.0且小于5.2.1时,存在跨站点脚本漏洞。当使用Sanitize的“relaxed”配置或允许某些元素的自定义配置对HTML进行清理时,即使math和svg不在allowlist中,math或svg元素中的某些内容也可能无法正确清理。如果使用Sanitize的松弛配置或允许以下一个或多个HTML元素的自定义配置,则可能容易受到此问题的攻击:iframe、math、noembed、noframes、noscript、纯文本、脚本、样式、svg、xmp。使用精心编制的输入,攻击者可以通过Sanitize潜入任意HTML,在浏览器中呈现HTML时,可能导致XSS(跨站点脚本)或其他不希望的行为。这已在5.2.1中修复。解决建议
目前厂商已发布升级补丁以修复漏洞,补丁获取链接:https://github.com/rgrove/sanitize/releases/tag/v5.2.1受影响软件情况
# | 类型 | 厂商 | 产品 | 版本 | 影响面 | ||||
1 | |||||||||
---|---|---|---|---|---|---|---|---|---|
运行在以下环境 | |||||||||
应用 | sanitize_project | sanitize | * | From (including) 3.0.0 | Up to (excluding) 5.2.1 | ||||
运行在以下环境 | |||||||||
系统 | debian_10 | ruby-sanitize | * | Up to (excluding) 4.6.6-2.1~deb10u1 | |||||
运行在以下环境 | |||||||||
系统 | debian_11 | ruby-sanitize | * | Up to (excluding) 4.6.6-2.1 | |||||
运行在以下环境 | |||||||||
系统 | debian_12 | ruby-sanitize | * | Up to (excluding) 4.6.6-2.1 | |||||
运行在以下环境 | |||||||||
系统 | debian_sid | ruby-sanitize | * | Up to (excluding) 4.6.6-2.1 | |||||
运行在以下环境 | |||||||||
系统 | ubuntu_20.04 | ruby-sanitize | * | Up to (excluding) 4.6.6-2.1~0.20.04.1 | |||||
- 攻击路径 远程
- 攻击复杂度 容易
- 权限要求 无需权限
- 影响范围 有限影响
- EXP成熟度 POC 已公开
- 补丁情况 官方补丁
- 数据保密性 数据泄露
- 数据完整性 传输被破坏
- 服务器危害 无影响
- 全网数量 N/A
CWE-ID | 漏洞类型 |
CWE-79 | 在Web页面生成时对输入的转义处理不恰当(跨站脚本) |
Exp相关链接

版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论