当前位置: 首页 > news >正文

下载模板后怎么建设网站:wordpress网站如何播放自己的视频

下载模板后怎么建设网站,:wordpress网站如何播放自己的视频,手机网站 微网站,兼职网站平台有哪些docker搭建漏洞复现环境 漏洞原理看帮助文档 # Django debug page XSS漏洞#xff08;CVE-2017-12794#xff09;分析Django发布了新版本1.11.5#xff0c;修复了500页面中可能存在的一个XSS漏洞#xff0c;这篇文章说明一下该漏洞的原理和复现#xff0c;和我的一点点评…docker搭建漏洞复现环境 漏洞原理看帮助文档 # Django debug page XSS漏洞CVE-2017-12794分析Django发布了新版本1.11.5修复了500页面中可能存在的一个XSS漏洞这篇文章说明一下该漏洞的原理和复现和我的一点点评。## 0x01 补丁分析因为官方说明是500页面中出现的BUG所以我们重点关注的就是django/views/debug.py。Github上有Django的仓库下载下来用1.11.4和1.11.5进行比较bash git clone https://github.com/django/django.git cd django git diff 1.11.4 1.11.5 django/views/debug.py ![sp170908_035017](img/django/sp170908_035017.png)可见外部关闭了全局转义然后在这两个地方增加了强制转义。那么漏洞肯定是在这个位置触发的。## 0x02 功能点探索如果要触发这两个输出点就必须进入这个if语句{% ifchanged frame.exc_cause %}{% if frame.exc_cause %}。首先我们来想一下正常情况下这个位置是干嘛用的也就是说功能点是什么。作为一个老年Django开发看到上图画框的这个关键句子The above exception was the direct cause of the following exception:我是有印象的一般是在出现数据库异常的时候会抛出这样的错误语句。我们可以做个简单的测试在Django命令行下我们创建一个username为phith0n的用户然后再次创建一个username为phith0n的用户则会抛出一个IntegrityError异常![sp170908_040738](img/django/sp170908_040738.png)见上图原因是触发了数据库的Unique异常。为什么Django会引入这样一个异常机制这是为了方便开发者进行SQL错误的调试因为Django的模型最终是操作数据库数据库中具体出现什么错误是Django无法100%预测的。那么为了方便开发者快速找到是哪个操作触发了数据库异常就需要将这两个异常回溯栈关联到一块。我们可以看看代码django/db/utils.py的__exit__函数python def __exit__(self, exc_type, exc_value, traceback):if exc_type is None:returnfor dj_exc_type in (DataError,OperationalError,IntegrityError,InternalError,ProgrammingError,NotSupportedError,DatabaseError,InterfaceError,Error,):db_exc_type getattr(self.wrapper.Database, dj_exc_type.__name__)if issubclass(exc_type, db_exc_type):dj_exc_value dj_exc_type(*exc_value.args)dj_exc_value.__cause__ exc_valueif not hasattr(exc_value, __traceback__):exc_value.__traceback__ traceback# Only set the errors_occurred flag for errors that may make# the connection unusable.if dj_exc_type not in (DataError, IntegrityError):self.wrapper.errors_occurred Truesix.reraise(dj_exc_type, dj_exc_value, traceback) 其中exc_type是异常如果其类型是DataError,OperationalError,IntegrityError,InternalError,ProgrammingError,NotSupportedError,DatabaseError,InterfaceError,Error之一则抛出一个同类型的新异常并设置其__cause__和__traceback__为此时上下文的exc_value和traceback。exc_value是上一个异常的说明traceback是上一个异常的回溯栈。这个函数其实就是关联了上一个异常和当前的新异常。最后在500页面中__cause__被输出。## 0x03 漏洞复现经过我的测试我发现在使用Postgres数据库并触发异常的时候psycopg2会将字段名和字段值全部抛出。那么如果字段值中包含我们可控的字符串又由于0x02中说到的这个字符串其实就会被设置成__cause__最后被显示在页面中。所以我们假设有如下场景1. 用户注册页面未检查用户名 2. 注册一个用户名为scriptalert(1)/script的用户 3. 再次注册一个用户名为scriptalert(1)/script的用户 4. 触发duplicate key异常导致XSS漏洞我将上述流程整理成vulhub的一个环境https://github.com/phith0n/vulhub/tree/master/django/C http://your-ip:8000/create_user/?usernamescriptalert(1)/script创建一个用户成功再次访问http://your-ip:8000/create_user/?usernamescriptalert(1)/script触发异常 因为被kali的浏览器拦截了用本机的浏览器实验
http://www.zqtcl.cn/news/554212/

相关文章:

  • 深圳做企业网站的音乐网站设计
  • 互联网网站如何做菜鸟教程自学网
  • 网站模板上传工具网站报名照片怎么做
  • 做网站如何备案东城做企业网站多少钱
  • 建设手机网站的目的广告制作行业发展前景
  • 手工艺品网站建设目的长春有哪些网络设计公司
  • 重庆建设工程招标网站淮南58同城网
  • 有域名在本机上做网站psd素材
  • 做拍拍拍拍网站网站宣传的劣势
  • 建设银行官方网站诚聘英才亚马逊店铺出售网站
  • 佛山房地产网站建设万网域名查询接口
  • 新建的网站必须要备案吗优购物网
  • 陕西省住房和城乡建设厅官方网站智能网站建设制作
  • 英语故事网站建设镇江大港信息港
  • 接单做一个网站多少钱商河网站建设
  • 网站建设s南昌网站建设服务
  • 免费的素材网站有哪些重庆网页设计公司排名
  • 内网网站建设汇报即商通网站建设推广
  • 企业建站系统是什么学校的网站怎么做的
  • 哪个大学的网站做的最好看网页制作教材素材
  • 南里商濮阳网站建设福田附件网站建设公司
  • 监控性能网站模板网页设计公司找哪家
  • 校园网站建设教程安卓小程序开发入门
  • 找人做网站需要注意什么seo工作
  • 做外贸有哪些好的网站有哪些内容响应式网站wordpress摄影
  • iis 7.0 搭建网站做门户网站公司
  • 织梦网站模版官网霸屏seo服务
  • 人工智能的网站开发app流程
  • 国外做贸易网站淄川区建设局网站
  • 做网站第一步要干啥wordpress 金币插件