项目作者: Saferman

项目描述 :
django 漏洞:CVE-2020-7471 Potential SQL injection via StringAgg(delimiter) 的漏洞环境和 POC
高级语言: Python
项目地址: git://github.com/Saferman/CVE-2020-7471.git
创建时间: 2020-02-11T13:57:14Z
项目社区:https://github.com/Saferman/CVE-2020-7471

开源协议:

下载


CVE-2020-7471

这个仓库提供 CVE-2020-7471 Potential SQL injection via StringAgg(delimiter) 漏洞的环境和 POC

受影响的 django 版本

  • 1.11 到 1.11.28(不含)
  • 2.2 到 2.2.10(不含)
  • 3.0 到 3.0.3(不含)

下载使用前需要如下操作:

  1. 安装 django 漏洞版本,我测试用的是

    1. pip install django==3.0.2 -i https://pypi.tuna.tsinghua.edu.cn/simple
  2. 参考 https://www.runoob.com/postgresql/windows-install-postgresql.html 完成 postgres 数据库的安装

  3. 新建数据库

    1. CREATE DATABASE test;
  1. 修改 sqlvul_projects/settings.py 里面的数据库配置,如果上一步你安装用的默认配置(包括设置密码为postgres),就无需修改任何配置,可以跳过这一步

    1. DATABASES = {
    2. 'default': {
    3. 'ENGINE': 'django.db.backends.postgresql',
    4. 'NAME': 'test', # 数据库名称
    5. 'USER': 'postgres',
    6. 'PASSWORD': 'postgres', # 数据库用户密码
    7. 'HOST': '127.0.0.1', # 数据库地址
    8. 'PORT': '5432',
    9. }
    10. }
  2. 通过 django 初始化数据表

    1. python3 manage.py migrate
    2. python3 manage.py makemigrations vul_app
    3. python3 manage.py migrate vul_app

然后运行 POC 脚本CVE-2020-7471.py就可以了