You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复Flask-Bootstrap中Bootstrap与jQuery的JavaScript漏洞?

修复Flask-Bootstrap内置依赖漏洞的方法

由于Flask-Bootstrap 3.3.7.1是针对Bootstrap 3的最终维护版本,官方已停止更新,内置的Bootstrap 3.3.7和jQuery 1.12.4存在安全漏洞且无法通过升级Flask-Bootstrap解决,你可以通过以下两种方式修复:

方法一:手动替换安全版本的静态资源

直接修改base.html,覆盖Flask-Bootstrap默认引入的旧版本资源,不再依赖super()加载内置组件:

修改base.html的head块

替换原有的{{ super() }},手动引入Bootstrap 3的最新安全版本(3.4.1)的CSS:

{% block head %}
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css">
<!-- 保留你自己的其他头部资源 -->
{% endblock %}

修改base.html的scripts块

替换原有的{{ super() }},手动引入安全版本的jQuery和Bootstrap JS:

  • jQuery可选1.12.x分支的最终安全补丁版1.12.4,更推荐用兼容Bootstrap 3的jQuery 3.x系列(如3.6.4,安全性更高)
  • Bootstrap JS对应使用3.4.1版本

示例代码:

{% block scripts %}
<!-- 优先选择jQuery 3.x提升安全性 -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js"></script>
<!-- 保留你自己的其他脚本 -->
{% endblock %}

方法二:升级到Bootstrap 4/5版本(需适配模板)

如果项目可以接受模板调整,建议改用支持Bootstrap 4或5的Flask扩展,这类扩展内置了安全的依赖版本:

  1. 卸载旧版Flask-Bootstrap:
    pip uninstall flask-bootstrap
    
  2. 安装新版扩展:
    # 安装适配Bootstrap4的版本
    pip install flask-bootstrap4
    # 或安装适配Bootstrap5的版本
    pip install flask-bootstrap5
    
  3. 修改项目初始化代码和模板语法(如base.html的继承规则、组件类名等,需适配Bootstrap4/5的结构)

验证修复

修改完成后重启项目,查看页面源码确认加载的是指定的安全版本,再用Lighthouse重新检测即可验证漏洞是否修复。

内容的提问来源于stack exchange,提问作者tommy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 13:05:54