安全问题档案

Django 的开发团队致力于负责任地报告和披露与安全相关的问题,正如 Django 的安全政策 所概述的那样。

作为该承诺的一部分,我们保留了以下已修复和披露的历史问题清单。对于每个问题,下面的列表包括日期、简要描述、CVE 标识符 (如果适用)、受影响版本的列表、到完整披露的链接以及到适当补丁的链接。

一些重要的注意事项适用于这些信息:

  • 受影响的版本列表只包括那些在披露时有稳定的、安全支持的版本的 Django。这意味着旧版本(其安全支持已经过期)和在披露时处于发布前(alpha/beta/RC)状态的版本可能会受到影响,但没有被列出。

  • Django 项目有时会发布安全公告,指出潜在的安全问题,这些问题可能是由于配置不当或 Django 本身以外的其他问题造成的。有些安全公告已经收到了 CVE,在这种情况下,它们会被列在这里,但由于它们没有附带的补丁或版本,所以只会列出描述、披露和 CVE。

Django 的安全流程下的问题

所有的安全问题都已经在 Django 的安全进程的版本下处理。这些版本列举如下。

December 4, 2024 - CVE 2024-53907

Potential denial-of-service in django.utils.html.strip_tags(). Full description

December 4, 2024 - CVE 2024-53908

Potential SQL injection in HasKey(lhs, rhs) on Oracle. Full description

September 3, 2024 - CVE 2024-45231

Potential user email enumeration via response status on password reset. Full description

September 3, 2024 - CVE 2024-45230

Potential denial-of-service vulnerability in django.utils.html.urlize(). Full description

August 6, 2024 - CVE 2024-42005

Potential SQL injection in QuerySet.values() and values_list(). Full description

August 6, 2024 - CVE 2024-41991

Potential denial-of-service vulnerability in django.utils.html.urlize() and AdminURLFieldWidget. Full description

August 6, 2024 - CVE 2024-41990

Potential denial-of-service vulnerability in django.utils.html.urlize(). Full description

August 6, 2024 - CVE 2024-41989

Potential memory exhaustion in django.utils.numberformat.floatformat(). Full description

July 9, 2024 - CVE 2024-39614

Potential denial-of-service in django.utils.translation.get_supported_language_variant(). Full description

July 9, 2024 - CVE 2024-39330

Potential directory-traversal in django.core.files.storage.Storage.save(). Full description

July 9, 2024 - CVE 2024-39329

Username enumeration through timing difference for users with unusable passwords. Full description

July 9, 2024 - CVE 2024-38875

Potential denial-of-service in django.utils.html.urlize(). Full description

2024 年 3 月 4 日 - CVE 2024-27351

django.utils.text.Truncator.words() 存在潜在的正则表达式拒绝服务漏洞。完整描述

2024 年 2 月 6 日 - CVE 2024-24680

intcomma 模板过滤器存在潜在的拒绝服务漏洞。完整描述

2023 年 11 月 1 日 - CVE 2023-46695

关于 Windows 平台上的 UsernameField 存在潜在的拒绝服务漏洞。详细信息请查看 完整描述

2023 年 10 月 4 日 - CVE 2023-43665

django.utils.text.Truncator 中存在拒绝服务可能性。详细信息请查看 完整描述

2023 年 9 月 4 日 - CVE 2023-41164

django.utils.encoding.uri_to_iri() 存在潜在的拒绝服务漏洞。详细信息请查看 完整描述

2023 年 7 月 3 日 - CVE 2023-36053

EmailValidatorURLValidator 存在潜在的正则表达式拒绝服务漏洞。详细信息请查看 完整描述

2023 年 5 月 3 日 - CVE 2023-31047

上传多个文件使用一个表单字段时存在潜在的验证绕过漏洞。详细信息请查看 完整描述

2023 年 2 月 14 日 - CVE 2023-24580

文件上传中存在潜在的拒绝服务漏洞。详细信息请查看 完整描述

2023 年 2 月 1 日 - CVE 2023-23969

通过 Accept-Language 标头存在潜在的拒绝服务漏洞。详细信息请查看 完整描述

2022 年 10 月 4 日 - CVE 2022-41323

国际化 URL 存在潜在的拒绝服务漏洞。详细信息请查看 完整描述

2022 年 8 月 3 日 - CVE 2022-36359

FileResponse 中存在潜在的反射式文件下载漏洞。详细信息请查看 完整描述

2022 年 7 月 4 日 - CVE 2022-34265

通过 Trunc(kind)Extract(lookup_name) 参数存在潜在的 SQL 注入漏洞。详细信息请查看 完整描述

2022 年 4 月 11 日 - CVE 2022-28346

QuerySet.annotate(), aggregate()extra() 中存在潜在的 SQL 注入漏洞。详细信息请查看 完整描述

2022 年 4 月 11 日 - CVE 2022-28347

通过 PostgreSQL 上的 QuerySet.explain(**options) 存在潜在的 SQL 注入漏洞。详细信息请查看 完整描述

2022 年 2 月 1 日 - CVE 2022-22818

可能通过 {% debug %} 模板标签存在跨站脚本攻击(XSS)漏洞。详细信息请查看 完整描述

受影响的版本

2022 年 2 月 1 日 - CVE 2022-23833

文件上传中存在拒绝服务可能性。详细信息请查看 完整描述

受影响的版本

2022 年 1 月 4 日 - CVE 2021-45452

通过 Storage.save() 存在潜在的目录遍历漏洞。详细信息请查看 完整描述

受影响的版本

2022 年 1 月 4 日 - CVE 2021-45116

dictsort 模板过滤器存在潜在的信息泄露漏洞。详细信息请查看 完整描述

受影响的版本

2022 年 1 月 4 日 - CVE 2021-45115

UserAttributeSimilarityValidator 存在拒绝服务可能性。详细信息请查看 完整描述

受影响的版本

2021 年 12 月 7 日 - CVE 2021-44420

存在潜在的绕过基于 URL 路径的上游访问控制漏洞。详细信息请查看 完整描述

受影响的版本

2021 年 7 月 1 日 - CVE 2021-35042

潜在的 SQL 注入,通过未检验的 QuerySet.order_by() 输入。完整描述

受影响的版本

2021 年 6 月 2 日 - CVE 2021-33203

可能通过 admindocs 进行目录遍历。完整描述

受影响的版本

2021 年 6 月 2 日 - CVE 2021-33571

由于验证器接受 IPv4 地址中的前导零,因此可能出现不确定的 SSRF、RFI 和 LFI 攻击。完整描述

受影响的版本

2021 年 5 月 6 日 - CVE 2021-32052

由于 URLValidator 在 Python 3.9.5+ 上接受输入中的换行符,存在标头注入可能性。详细信息请查看 完整描述

受影响的版本

2021 年 5 月 4 日 - CVE 2021-31542

通过上传的文件进行潜在的目录遍历。完整描述

受影响的版本

2021 年 4 月 6 日 - CVE 2021-28658

通过上传的文件进行潜在的目录遍历。完整描述

受影响的版本

2021 年 2 月 19 日 - CVE 2021-23336

通过 django.utils.http.limited_parse_qsl() 进行的网络缓存中毒。完整描述

受影响的版本

2021 年 2 月 1 日 - CVE 2021-3281

通过 archive.extract() 进行潜在的目录遍历。完整说明

受影响的版本

2020 年 9 月 1 日 - CVE 2020-24584

在 Python 3.7+ 上,文件系统缓存的中间层目录的权限升级。完整说明

受影响的版本

2020 年 9 月 1 日 - CVE 2020-24583

在 Python 3.7+ 上,中间层目录的权限不正确。完整说明

受影响的版本

2020 年 6 月 3 日 - CVE 2020-13596

可能通过管理 ForeignKeyRawIdWidget 进行 XSS。完整说明

受影响的版本

2020 年 6 月 3 日 - CVE 2020-13254

通过畸形的 memcached 密钥可能造成数据泄露。完整说明

受影响的版本

2020 年 3 月 4 日 - CVE 2020-9402

针对 Oracle 数据库, 通过 GIS 函数和聚合函数中的 tolerance 参数带来的潜在 SQL 注入。完整说明

受影响的版本

2020 年 2 月 3 日 - CVE 2020-7471

通过 StringAgg(delimiter) 带来的潜在 SQL 注入。 完整说明

受影响的版本

2019 年 12 月 18 日 - CVE 2019-19844

通过密码重置表单带来的潜在账户劫持。完整说明

受影响的版本

2019 年 12 月 2 日 - CVE 2019-19118

在 Django 管理中的特权提升。完整说明

受影响的版本

2019 年 8 月 1 日 - CVE 2019-14235

django.utils.encoding.uri_to_iri() 函数中潜在的内存耗尽。 完整说明

受影响的版本

2019 年 8 月 1 日 - CVE 2019-14234

针对 JSONFieldHStoreField 在键和索引查询时带来的潜在 SQL 注入。 完整说明

受影响的版本

2019 年 8 月 1 日 - CVE 2019-14233

存在于 strip_tags() 函数的拒绝服务攻击。完整说明

受影响的版本

2019 年 8 月 1 日 - CVE 2019-14232

存在于 django.utils.text.Truncator 的拒绝服务攻击。完整说明

受影响的版本

2019 年 7 月 1 日 - CVE 2019-12781

通过 HTTPS 连接反向代理的 HTTP 检测不正确。。完整说明

受影响的版本

2019 年 6 月 3 日 - CVE 2019-12308

AdminURLFieldWidget 生成的 “Current URL” 连接引起的跨站脚本漏洞。完整说明

受影响的版本

2019 年 6 月 3 日 - CVE 2019-11358

捆绑 jQuery 的原型污染。完整说明

受影响的版本

2019 年 2 月 11 日 - CVE 2019-6975

django.utils.numberformat.format() 中内存耗尽。完整说明

受影响的版本

2019 年 1 月 4 日 - CVE 2019-3498

默认 404 页面存在内容欺骗的可能。完整说明

受影响的版本

2018 年 10 月 1 日 - CVE 2018-16984

密码哈希值披露给了 “只看” 的管理员用户。完整说明

受影响的版本

2018 年 8 月 1 日 - CVE 2018-14574

CommonMiddleware 中开放重定向的可能性。完整说明

受影响的版本

2018 年 3 月 6 日 - CVE 2018-7537

truncatechars_htmltruncatewords_html 模板过滤器中存在拒绝服务的可能性。完整说明

受影响的版本

2018 年 3 月 6 日 - CVE 2018-7536

urlizeurlizetrunc 模板过滤器中存在拒绝服务的可能性。完整说明

受影响的版本

2018 年 2 月 1 日 - CVE 2018-6188

AuthenticationForm 中的信息泄露。完整说明

受影响的版本

2017 年 9 月 5 日 - CVE 2017-12794

在技术 500 调试页面的回溯部分可能存在 XSS。完整说明

受影响的版本

2017 年 4 月 4 日 - CVE 2017-7234

django.views.static.service() 中的开放重定向漏洞。完整说明

受影响的版本

2017 年 4 月 4 日 - CVE 2017-7233

通过用户提供的数字重定向 URL 打开重定向和可能的 XSS 攻击。完整说明

受影响的版本

2016 年 11 月 1 日 - CVE 2016-9014

DEBUG=Tr 时,DNS 重绑定漏洞。完整说明

受影响的版本

2016 年 11 月 1 日 - CVE 2016-9013

在 Oracle 上运行测试时创建的带有硬编码密码的用户。完整说明

受影响的版本

2016 年 9 月 26 日 - CVE 2016-7401

在有 Google Analytics 的网站上绕过 CSRF 保护。完整说明

受影响的版本

2016 年 7 月 18 日 - CVE 2016-6186

管理员的添加/更改相关弹窗中的 XSS。完整说明

受影响的版本

2016 年 3 月 1 日 - CVE 2016-2513

通过时间差对密码哈希工作因子升级进行用户枚举。完整说明

受影响的版本

2016 年 3 月 1 日 - CVE 2016-2512

通过用户提供的包含基本认证的重定向 URL 进行恶意重定向和可能的 XSS 攻击。完整说明

受影响的版本

2016 年 2 月 1 日 - CVE 2016-2048

拥有 “变更” 而非 “添加” 权限的用户可以用 “保存为 True” 为 ModelAdmin 创建对象。完整说明

受影响的版本

2015 年 11 月 24 日 - CVE 2015-8213

date 模板过滤器存在设置泄漏可能性。详细信息请查看 完整描述

受影响的版本

2015 年 8 月 18 日 - CVE 2015-5963 / CVE 2015-5964

通过填充会话存储,存在 logout() 视图的拒绝服务可能性。详细信息请查看 完整描述

受影响的版本

2015 年 7 月 8 日 - CVE 2015-5145

URL 验证中存在拒绝服务可能性。详细信息请查看 完整描述

受影响的版本

2015 年 7 月 8 日 - CVE 2015-5144

由于验证器接受输入中的换行符,存在标头注入可能性。详细信息请查看 完整描述

受影响的版本

2015 年 7 月 8 日 - CVE 2015-5143

通过填充会话存储存在拒绝服务可能性。详细信息请查看 完整描述

受影响的版本

2015 年 5 月 20 日 - CVE 2015-3982

修复了 cached_db 后端中的会话刷新问题。详细信息请查看 完整描述

受影响的版本

2015 年 3 月 18 日 - CVE 2015-2317

通过用户提供的重定向 URL 缓解了可能的跨站脚本(XSS)攻击。详细信息请查看 完整描述

受影响的版本

2015年 3 月 18 日 - CVE 2015-2316

使用 strip_tags() 存在拒绝服务可能性。详细信息请查看 完整描述

受影响的版本

2015 年 3 月9 日 - CVE 2015-2241

通过 ModelAdmin.readonly_fields 中的属性存在跨站脚本(XSS)攻击漏洞。详细信息请查看 完整描述

受影响的版本

2015 年 1 月 13 日 - CVE 2015-0222

使用 ModelMultipleChoiceField 存在数据库拒绝服务漏洞。详细信息请查看 完整描述

受影响的版本

2015 年 1 月 13 日 - CVE 2015-0221

存在针对 django.views.static.serve() 的拒绝服务攻击漏洞。详细信息请查看 完整描述

受影响的版本

2015 年 1 月 13 日 - CVE 2015-0220

通过用户提供的重定向 URL 缓解了可能的跨站脚本(XSS)攻击。详细信息请查看 完整描述

受影响的版本

2015 年 1 月 13 日 - CVE 2015-0219

通过下划线/短横线混合欺骗 WSGI 标头。完整描述

受影响的版本

2014 年 8 月 20 日 - CVE 2014-0483

在管理员中通过查询字符串操纵导致数据泄漏。完整描述

受影响的版本

2014 年 8 月 20 日 - CVE 2014-0482

RemoteUserMiddleware 会话劫持。完整描述

受影响的版本

2014 年 8 月 20 日 - CVE 2014-0481

文件上传拒绝服务。完整描述

受影响的版本

2014 年 8 月 20 日 - CVE 2014-0480

reverse() 可以生成指向其他主机的 URL。完整描述

受影响的版本

2014 年 5 月 18 日 - CVE 2014-3730

来自用户输入的格式不正确的 URL 被错误验证。完整描述

受影响的版本

2014 年 5 月 18 日 - CVE 2014-1418

缓存可能允许存储和提供私人数据。完整描述

受影响的版本

2014 年 4 月 21 日 - CVE 2014-0474

MySQL 类型转换导致意外的查询结果。完整描述

受影响的版本

2014 年 4 月 21 日 - CVE 2014-0473

匿名页面的缓存可能会显示 CSRF 令牌。完整描述

受影响的版本

2014 年 4 月 21 日 - CVE 2014-0472

使用 reverse() 导致意外的代码执行。完整描述

受影响的版本

2013 年 9 月 14 日 - CVE 2013-1443

通过大型密码进行拒绝服务攻击。完整描述

受影响的版本

2013 年 9 月 10 日 - CVE 2013-4315

通过 ssi 模板标签进行目录遍历。完整描述

受影响的版本

2013 年 8 月 13 日 - CVE 2013-6044

可能通过未经验证的 URL 重定向方案进行跨站脚本(XSS)攻击。完整描述

受影响的版本

2013 年 8 月 13 日 - CVE 2013-4249

通过管理员信任的 URLField 值进行跨站脚本(XSS)攻击。完整描述

受影响的版本

2013 年 1 月 19 日 - CVE 2013-0306

通过 formset 的 max_num 绕过进行拒绝服务攻击。完整描述

受影响的版本

2013 年 1 月 19 日 - CVE 2013-0305

通过管理员历史记录日志泄露信息。完整描述

受影响的版本

2013 年 1 月 19 日 - CVE 2013-1664 / CVE 2013-1665

针对 Python XML 库的实体攻击。完整描述

受影响的版本

2013 年 2 月 19 日 - 无 CVE

Host 头处理的额外加固。完整描述

受影响的版本

2012 年 12 月 10 日 - 无 CVE 2

对重定向验证的额外加固。完整描述

受影响的版本

2012 年 12 月 10 日 - 无 CVE 1

Host 头处理的额外加固。完整描述

受影响的版本

2012 年 10 月 17 日 - CVE 2012-4520

Host 头部污染。完整描述

受影响的版本

2012 年 7 月 30 日 - CVE 2012-3444

通过大型图像文件进行拒绝服务攻击。完整描述

受影响的版本

2012 年 7 月 30 日 - CVE 2012-3443

通过压缩的图像文件进行拒绝服务攻击。完整描述

受影响的版本

2012 年 7 月 30 日 - CVE 2012-3442

通过未能验证重定向方案进行跨站脚本(XSS)攻击。完整描述

受影响的版本

2011 年 9 月 9 日 - CVE 2011-4140

潜在的 CSRF(跨站请求伪造)攻击通过 Host 头部。完整描述

受影响的版本

此通知仅为提醒,因此没有发布补丁。

  • Django 1.2

  • Django 1.3

2011 年9月9日 - CVE 2011-4139

Host 头部缓存污染。完整描述

受影响的版本

2011 年9月9日 - CVE 2011-4138

通过 URLField.verify_exists 存在信息泄露/任意请求发出。完整描述

受影响的版本

2011 年 9 月 9 日 - CVE 2011-4137

通过 URLField.verify_exists 进行拒绝服务攻击。完整描述

受影响的版本

2011 年9月9日 - CVE 2011-4136

在使用内存缓存支持的会话时进行会话操纵。完整描述

受影响的版本

2011 年 2 月 8 日 - CVE 2011-0698

通过不正确的路径分隔符处理在 Windows 上进行目录遍历。完整描述

受影响的版本

2011 年 2 月 8 日 - CVE 2011-0697

通过未经过滤的上传文件的名称进行跨站脚本(XSS)攻击。完整描述

受影响的版本

2011 年 2 月 8 日 - CVE 2011-0696

通过伪造的 HTTP 头部进行 CSRF 攻击。完整描述

受影响的版本

2010 年 12 月 22 日 - CVE 2010-4535

在密码重置机制中的拒绝服务攻击。完整描述

受影响的版本

2010 年 12 月 22 日 - CVE 2010-4534

界面管理中的信息泄漏`完整描述<https://www.djangoproject.com/weblog/2010/dec/22/security/>`__

受影响的版本

2010年9月8日 - CVE 2010-3082

XSS通过信任不安全的cookie值。完整描述<https://www.djangoproject.com/weblog/2010/sep/08/security-release/>`__

受影响的版本

October 9, 2009 - CVE 2009-3695

通过缺陷正则表达性能拒绝服务。完整说明

受影响的版本

2009 年 7 月 28 日 - CVE 2009-2659

开发服务器媒体处理程序中的目录遍历。完整说明

受影响的版本

2008 年 9 月 2 日 - CVE 2008-3909

在管理员登录时通过保存 POST 数据进行 CSRF。完整说明

受影响的版本

2008 年 5 月 14 日 - CVE 2008-2302

通过管理员登录重定向进行 XSS。完整说明

受影响的版本

2007 年 10 月 26 日 - CVE 2007-5712

通过任意大的 Accept-Language 头拒绝服务。完整说明

受影响的版本

Django 安全进程之前的问题

有些安全问题是在 Django 还没有正式使用安全流程之前就已经处理好的。对于这些问题,当时可能还没有发布新的版本,可能还没有分配 CVE。

2007 年 1 月 21 日 - CVE 2007-0405

对认证用户进行明显的 “缓存”。完整说明

受影响的版本

2006 年 8 月 16 日 - CVE 2007-0404

翻译框架中的文件名验证问题。完整说明

受影响的版本

Back to Top