Django发布安全补丁 修复拒绝服务与权限类漏洞

阅读量5593

发布时间 : 2026-03-06 10:56:33

x
译文声明

本文是翻译文章,文章原作者 Ddos ,文章来源:securityonline

原文地址:https://securityonline.info/django-releases-security-patches-to-address-dos-and-permission-vulnerabilities/

译文仅供参考,具体内容表达以及含义原文为准。

Django 安全团队已针对该框架所有受支持版本发布重要更新,修复两个新发现的安全漏洞。此次发布的更新涵盖 Django 6.0.3、5.2.12 和 4.2.29 版本,解决了一个中等严重程度的拒绝服务(DoS)漏洞,以及一个与文件权限配置错误相关的低严重程度问题。
官方强烈建议开发者尽快升级环境,以降低相关安全风险。

CVE-2026-25673:Unicode 归一化引发的潜在拒绝服务攻击

这两个漏洞中影响更突出的是一个 “中等” 严重级漏洞,该漏洞影响 URLField 表单字段。在 Windows 系统中,该字段的 to_python() 方法所采用的处理流程可能被利用,导致服务器资源被大量消耗。
根据官方安全公告:“在 Windows 系统上,urlsplit() 函数会执行 NFKC 归一化(unicodedata.normalize),对于包含特定字符的大体积输入数据,该操作的执行速度会异常缓慢”。这种性能损耗形成了拒绝服务攻击的潜在载体,恶意攻击者可发送构造的恶意输入,导致服务器陷入卡顿。
为解决该问题,Django 团队实现了一套简化的协议检测逻辑,完全绕过了 Unicode 归一化流程。使用自定义验证器的开发者需注意:“字段值中的换行符、制表符及其他控制字符,将不再由 URLField.to_python() 处理”。

CVE-2026-25674:文件系统权限风险

第二个低严重级漏洞,涉及 Django 在创建新文件或目录时的权限处理机制。此前,该框架的文件系统存储模块和基于文件的缓存后端,均依赖进程的 umask(权限掩码)来控制文件 / 目录权限。
安全团队发现,在多线程环境下存在这样的风险:“一个线程临时修改的 umask 会影响其他线程创建文件和目录的操作,导致文件系统对象被赋予非预期的权限”。这可能造成敏感文件被创建时,访问权限设置过于宽松的情况。
本次更新修改了这一行为:在目录创建完成后,立即通过 os.chmod() 应用指定的权限配置,不再依赖全局的进程级 umask,消除了这一安全隐患。

受影响版本与修复方案

相关补丁已应用于主开发分支,以及所有当前受支持的稳定分支。
受影响分支 已修复版本
Django main 已修复
Django 6.0 6.0.3
Django 5.2 5.2.12
Django 4.2 4.2.29

总结

  1. Django 紧急发布补丁修复两类漏洞:Windows 系统下 URLField 引发的 DoS 漏洞(CVE-2026-25673),以及多线程环境下的文件权限漏洞(CVE-2026-25674)。
  2. DoS 漏洞的核心成因是 Unicode 归一化处理大体积恶意输入时性能异常,修复方式为绕过该归一化流程;权限漏洞则通过改用 os.chmod() 直接设置权限,摆脱对 umask 的依赖。
  3. 所有受支持版本(6.0/5.2/4.2)均已推出对应修复版本,开发者需尽快升级以规避风险。
本文翻译自securityonline 原文链接。如若转载请注明出处。
分享到:微信
+10赞
收藏
安全客
分享到:微信

发表评论

Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全KER All Rights Reserved 京ICP备08010314号-66