我们发布了 16 项新的安全公告,涉及 Highcharts Core、Dashboards、Grid Lite 和 Grid Pro。
这些漏洞是在持续开展的安全测试中发现的。在特定条件下,不可信或由用户控制的输入可能通过多种方式绕过产品中的安全防护。
针对已发现的漏洞,我们已经发布了修复版本。
完整的技术详情,包括受影响版本、修复版本、严重程度评级,以及适用时提供的解决方法,请参阅我们的 GitHub 安全公告。
Highcharts 用户应采取的措施
我们建议客户查看与所用 Highcharts 产品相关的安全公告,并升级到已修复的版本。我们已在多个主要版本分支中发布修复,因此您不必升级到最新的主版本才能获得修复。
| npm 包 | 受影响版本 | 修复版本 |
|---|---|---|
highcharts |
>= 12.0.0, < 12.6.1 |
12.6.1 |
highcharts |
>= 13.0.0, <= 13.0.2 |
13.1.0 |
highcharts |
>= 6.1.0, < 11.4.9 |
11.4.9 |
@highcharts/dashboards |
>= 1.0.0, <= 4.2.1 |
4.2.2 |
@highcharts/grid-lite |
>= 2.3.0, <= 3.1.0 |
3.2.0 |
@highcharts/grid-pro |
>= 2.3.0, <= 3.1.0 |
3.2.0 |
使用 npm 安装相应的修复版本:
bash
npm install highcharts@[修复版本号]
如果您通过 CDN 加载 Highcharts,请使用 code.highcharts.com 上对应版本的 URL。
作为额外的防护措施,在将不可信内容传递给 Highcharts 之前,应用程序应对其进行清理。尤其需要注意用户或外部数据源可能影响图表、仪表板或网格配置及内容的情况。
这会影响我的实现吗?
如果不可信或由用户控制的数据可能进入 Highcharts 配置,建议您升级到已修复的版本。以下情况可能受到影响:
- 应用程序允许最终用户创建、保存或分享图表、仪表板或网格配置。
- 标题、标签、列定义或语言字符串来自用户可编辑设置、翻译系统或 CMS。
- 应用程序会将某位用户或租户保存的配置展示给其他用户。
- 数据来自用户提供的数据源,并且数据中的对象键或列名被用于配置。
- 编辑者或客户可以通过插件、嵌入内容或集成输入配置。
如果暂时无法升级,请查阅相关安全公告,了解是否提供了可用的解决方法。
进一步完善我们的安全政策
安全测试方法不断发展,其中也包括能力日益增强的 AI 辅助测试工具。这些工具使我们能够发现以往较难识别的组合情形和边缘情况。
随着测试方法持续进步,我们也希望相应地完善安全工作。未来几周,我们将更新 Highsoft 安全政策,使其更加清晰、更能适应未来需求,并更明确地说明 Highsoft 在安全方面的责任。
我们鼓励所有 Highcharts 用户查看新的安全公告,并将所用产品升级到适用于自身实现的修复版本。