生活中处处都有CVE——CVE-2019-3498 Django 404页面漏洞浅谈

栏目: Python · 发布时间: 7年前

内容简介:Django于1月4日发布更新安全通告,其中提到了修复了新的CVE-2109-3498漏洞。在更新安全通告中,Django发布了新版本1.11.18、2.0.10以及2.1.5。其中主要提到了新的安全漏洞CVE-2019-3498,该漏洞被描述为404 not found页面中可能存在的安全隐患。即攻击者可利用特殊的URL来实现显示欺骗性内容(此页面由django.views.defaults.page_not_found()生成)。

生活中处处都有CVE——CVE-2019-3498 Django 404页面漏洞浅谈

Django前日发布关于CVE-2019-3498安全通告

通告详情

Django于1月4日发布更新安全通告,其中提到了修复了新的CVE-2109-3498漏洞。 通告地址

在更新安全通告中,Django发布了新版本1.11.18、2.0.10以及2.1.5。其中主要提到了新的安全漏洞CVE-2019-3498,该漏洞被描述为404 not found页面中可能存在的安全隐患。即攻击者可利用特殊的URL来实现显示欺骗性内容(此页面由django.views.defaults.page_not_found()生成)。

在修复后,URL路径不会显示在生成的页面中,而将用request_path变量来传入显示内容。

影响版本

Django master/2.1/2.0/1.11

目前在master及各版本分支上此问题已修复

Ryuji Tsutsui发布博客简单介绍这一漏洞

作者提到,通常django.views.defaults.page_not_found()默认为handler404,此处会给攻击者可乘之机。

作者做了一个非常简单的PoC来验证其存在的潜在风险:

使用Django 1.11.17版本快速创建一个环境,其中配置DEBUG False,ALLOW HOSTS为*,并migrate、runserver启动服务器。

404页面如下所示:

生活中处处都有CVE——CVE-2019-3498 Django 404页面漏洞浅谈

在此处,URL将直接显示在页面中。

那么只要简单通过URL,就能显示具有欺骗性的内容,如下:

生活中处处都有CVE——CVE-2019-3498 Django 404页面漏洞浅谈

虽然效果并非完美,但已经具有一定的误导性。

而在修复后,404页面则如下所示:

生活中处处都有CVE——CVE-2019-3498 Django 404页面漏洞浅谈

关于CVE及漏洞的浅谈

CVE近些年不管是实际内容还是风评(特别是Web方向)都出现了“越来越水”的倾向,去年仅仅两个月内印象中就有两个假洞(CVE-2018-17793和CVE-2018-17566),但绝大多数时候,它依然有着其权威性。

此次的漏洞作为一个隐藏了蛮久的安全隐患,收获了一个四位数的CVE,虽然有一些出人意料,不过最后看来也在情理之中。也许在忙于挖洞的过程中,这种设计上的安全隐患逐渐就被边缘化乃至忽略。

这个漏洞也是新年来感觉蛮有意思的漏洞,分享给大家,祝大家早日挖到下一个CVE(╯‵□′)╯︵┻━┻。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

JavaScript语言精粹

JavaScript语言精粹

道格拉斯•克罗克福德 (Douglas Crockford) / 赵泽欣、鄢学鹍 / 电子工业出版社 / 2012-9-1 / 49.00元

JavaScript 曾是“世界上最被误解的语言”,因为它担负太多的特性,包括糟糕的交互和失败的设计,但随着Ajax 的到来,JavaScript“从最受误解的编程语言演变为最流行的语言”,这除了幸运之外,也证明了它其实是一门优秀的语言。Douglas Crockford 在本书中剥开了JavaScript 沾污的外衣,抽离出一个具有更好可靠性、可读性和可维护性的JavaScript 子集,让你看......一起来看看 《JavaScript语言精粹》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具