CVE-2024-6485

跨站脚本
影响
引导
>=1.4.0 <=3.4.1
引导
未找到项目。
感叹号圆圈图标
补丁可用
HeroDevs 提供的 Never-Ending Support (NES) 版本已修复此漏洞。

概述

Bootstrap 是一个 HTML、CSS 和 JS 框架,用于开发响应性强、移动优先的网站和应用程序。

Bootstrap 3 Button 组件中发现了跨站脚本 (XSS) 漏洞。

根据 OWASP:跨站脚本攻击是一种注入式攻击,在这种攻击中,恶意脚本被注入到原本良性和可信的网站中。当攻击者使用网络应用程序向不同的终端用户发送恶意代码(通常以浏览器侧脚本的形式)时,就会发生 XSS 攻击。攻击者可以利用 XSS 向毫无戒心的用户发送恶意脚本。 

详细信息

模块信息

漏洞信息

使用与按钮状态特征相关联的 data-*-text 属性(即 data-complete-text)不受内容净化的限制。因此,按钮内显示的 HTML 不受任何限制。这可能导致注入恶意脚本 (XSS),从而将敏感数据外泄到远程服务器。

复制步骤

按钮组件代码没有正确地对可放置在遵循 data-[string]-text 格式的属性中并与 .button() 方法一起使用的内容进行消毒。将数据属性与 URL 参数或输入字段绑定的按钮会允许攻击者注入恶意代码。请参阅下一节中的概念验证。

代码示例

<input 
  id="firstName" 
  type="text" 
  value="<script>alert('XSS Input Success')</script><span>Loading XSS</span>"
/>
<button
  class="btn btn-primary input-test"
  data-loading-text="<span>I'm Loading</span>"
  type="button"
>
  Click Me
</button>

<script>
$(function () {
  $('.input-test').click(function () {
    var inputValue = $('#firstName').val();
    $(this).data('loadingText', inputValue);
    $(this).button('loading', inputValue);
  });
});
</script>

概念验证

CodePen URL

带代码的完整概念验证可在此处查看。

荣誉

  • K(发现者)

缓解

Bootstrap 3 已达到生命周期终点。 受影响组件的用户应采用以下缓解措施之一:

  • 迁移到更新版本的 Bootstrap
  • 打上自己的补丁
  • 利用 HeroDevs 这样的商业支持合作伙伴提供 EOL 后的安全支持。

解决问题

Bootstrap 3 已达到生命末期,建议迁移到更高版本的 Bootstrap。

另外,HeroDevs 还提供了安全的Bootstrap 3 直接替代品

尽管 Bootstrap 版本 3 已达到生命末期,HeroDevs 仍加紧提供了一个关键补丁来解决此漏洞。该补丁可确保数据属性得到正确的消毒,从而阻止通过该媒介进行 XSS 攻击的可能性。

HeroDevs付费使用Bootstrap永无止境支持的客户已在最新的Bootstrap 3 NES版本(bootstrap@3.4.5)中收到了此问题的修复程序。如果您尚未安装最新版本或需要帮助,请联系我们的支持团队寻求帮助。

对于所有其他 Bootstrap 3 用户,请考虑尽快从 Bootstrap 3 迁移。或者,请联系我们,了解从 HeroDevs 接收安全Bootstrap 3 更新的便捷性。

学习与预防

为了进一步帮助社区,HeroDevs 提供了详细的指导,以防止今后出现类似的漏洞。主要策略包括对数据输入进行消毒,尤其是与动态按钮内容等关键组件交互的数据输入。我们还建议定期审查和更新第三方库,以便在潜在的安全漏洞被利用之前抓住并解决它们。

结论

CVE-2024-6485 提醒我们,即使软件已经达到报废年限,也必须对其进行维护并确保其安全。有了积极的措施和社区的支持,我们就能确保为所有用户提供一个更安全的数字环境。

如果您有兴趣获得Bootstrap 3和支持库的安全性、合规性和兼容性支持,请联系我们

确保安全,并使用 HeroDevs 提供的最新补丁更新您的系统。关注我们的博客,了解更多见解和安全更新。

漏洞详情
身份证
CVE-2024-6485
受影响的项目
引导
受影响的版本
>=1.4.0 <=3.4.1
出版日期
2024 年 7 月 11 日
≈ 固定日期
2024 年 7 月 11 日
严重性
中型
类别
跨站脚本