【vulhub】django

0x00 CVE-2017-12794(xss)

1、简介

Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。

使用 Django,只要很少的代码,Python 的程序开发人员就可以轻松地完成一个正式网站所需要的大部分内容,并进一步开发出全功能的 Web 服务, Django 本身基于 MVC 模型,即 Model(模型)+ View(视图)+ Controller(控制器)设计模式,MVC 模式使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。
————————————————
https://blog.csdn.net/weixin_42250835/article/details/120946586

2、影响版本

1.11.5之前的版本。

3、搭建

4、复现

访问 http://ip:8000/create_user/?username=<script>alert('xss')</script>

再次

再次访问 http://ip:8000/create_user/?username=<script>alert('xss')</script>,触发xss异常

 

0x01 CVE-2018-14574(任意url跳转)

1、简介

服务端未对传入的跳转url变量进行检查和控制,可能导致可恶意构造任意一个恶意地址,诱导用户跳转到恶意网站。
由于是从可信的站点跳转出去的,用户会比较信任

2、影响版本

Django (<2.0.8)

3、搭建

 

4、复现

url后面加上想访问的网址就可以直接访问了

  

0x02 CVE-2019-14234(sql注入)

1、简介

Django是一款广为流行的开源web框架,由Python编写,许多网站和app都基于Django开发。

相比于Mysql,Postgresql支持的数据类型更加丰富,其对JSON格式数据的支持也让这个关系型数据库拥有了NoSQL的一些特点。

“原因是,Django-Admin中就支持用户控制queryset的查询键名.总的来说,如果你的应用使用了JSONField,且用户可以进入应用的Django-Admin后台,就可以进行SQL注入。同时,通过Postgresql的一些特性(如命令执行方法),即可getshell。”

2、影响版本

Django 主开发分支

Django 2.2.x < 2.2.4

Django 2.1.x < 2.1.11

Django 1.11.x < 1.11.23

3、搭建

 

4、复现

访问 ip:8000/admin/login/ 输入账号 admin , a123123123

 

构造 URL payload
在GET参数中构造 detail__a'b=123 提交,其中 detail 是模型 Collection 中的 JSONField

http://139.196.87.102:8000/admin/vuln/collection/?detail__a'b=123

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haoaaao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值