漏洞概述 漏洞名称: YzmCMS V7.5 Host Header Injection to Cross-Site Scripting (XSS) 漏洞类型: 跨站脚本攻击 (XSS) 严重程度: 高危 CVSS 3.1 评分: 7.1 (High) 漏洞描述: YzmCMS V7.5 在构建应用中的 URL 时,未对 HTTP Host 头进行验证。攻击者可以通过直接 HTTP 请求或在特定配置下触发此漏洞。该问题源于框架的 bootstrap 文件,具体在 的第 38 行。 影响范围 受影响软件: YzmCMS V7.5 (Build 20200321) 及更早版本 影响组件: - 常量:用于链接和表单目标 - 常量:用于 CSS、JS、图片等资产引用 - 辅助函数:生成所有内部链接的 URL - 模板输出:导航、登录、注册、搜索、页脚链接 修复方案 1. 选项 A - 白名单验证(推荐) - 限制 为已知允许的域名集合。 - 示例代码: 2. 选项 B - 基于配置的修复 - 从应用程序配置文件中读取域名,而不是从请求中获取。 - 示例代码: 3. 选项 C - Nginx 级别拒绝 - 在 Web 服务器层拒绝不匹配预期主机的请求。 - 示例配置: POC 代码 利用代码 手动验证