怎样分析CVE-2020-7471 Django sql注入漏洞复现,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获免费云主机域名。Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。使用 Django,只要很少的代码,Python 的程序开发人员就可以轻松地完成一个正式网站所需要的大部分内容,并进一步开发出全功能的 Web 服务 Django 本身基于 MVC 模型,即 Model(模型)+ View(视图)+ Controller(控制器)设计模式,MVC 模式使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。攻击者可通过构造分隔符传递给聚合函数contrib.postgres.aggregates.StringAgg,从而绕过转义符号()并注入恶意SQL语句。Django 1.11.x
Django 2.2.x
Django 3.0.x
Django 主开发分支不受影响范围:Django 1.11.28Django 2.2.10Django 3.0.31.使用kali搭建django 漏洞版本使用版本为3.0.2pip3 install django==3.0.22. 安装postgres 数据库,由于kali自带了postgres数据库,这里直接启动systemctl start postgresql3.使用命令sudo -i -u postgres进入postgres账户,然后输入psql进入数据库,并创建测试数据库test。CREATE DATABASE test;4.修改数据库密码,ALTER USER postgres WITH PASSWORD ‘root’;1.这里使用poc来进行实验,下载poc到本地2.然后进入到CVE-2020-7471/sqlvul_projects/settings.py,修改数据库配置,如果之前安装postgres数据库使用的默认配置(包括密码),这里就不需修改任何任何配置3. 修改完成后回到上层,然后利用CVE中的代码初始化测试数据库test中的表运行没有改变数据没关系,初始化环境完成4.进test数据库查看数据表查看vul_app_info表的信息5.没有插入数据没没关系,使用vim 查看CVE-2020-7471.py里内容6.执行poc向数据库插入数据可以看到POC里面的数据写入到数据库中,注入成功升级到Django最新版3.0.3看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注云编程开发博客行业资讯频道,感谢您对云编程开发博客的支持。
无论线下还是线上课程,很少直接涉及到实际项目的商务具体操作, 特别是技术和项目的紧密结合,技术如何和商务技巧的结合,这种系统的学习是所有其他同类课程中没有的。我们的“完整版系统集成项目实现全过程”正是围绕技术和项目结合、技术和商务结合为目标,进行的系统的实操视…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。