Django SQL注入 (CVE-2022-28346)
在 2.2.28 之前的 Django 2.2、3.2.13 之前的 3.2 和 4.0.4 之前的 4.0 中发现了一个问题。QuerySet.annotate()、aggregate() 和 extra() 方法会通过精心制作的字典(带有字典扩展)作为传递的 **kwargs 在列别名中进行 SQL 注入。该框架包括面向对象的映射器、视图系统、模板系统等。4、对接口进行SQL注入测试(单引号,
一、漏洞概述
Django是Django软件基金会的一套基于Python语言的开源Web应用框架。该框架包括面向对象的映射器、视图系统、模板系统等。
在 2.2.28 之前的 Django 2.2、3.2.13 之前的 3.2 和 4.0.4 之前的 4.0 中发现了一个问题。QuerySet.annotate()、aggregate() 和 extra() 方法会通过精心制作的字典(带有字典扩展)作为传递的 **kwargs 在列别名中进行 SQL 注入。
二、影响范围
2.2.28 之前的版本 Django 2.2
3.2.13 之前的版本 Django 3.2
4.0.4 之前的版本 Django 4.0
三、访问页面

四、漏洞复现
1、访问任意不存在的目录路径报错,提示存在demo接口

2、访问/demo/,提示有一个name参数

3、对接口参数进行fuzz(实战思路),vulfocus已经给出了/demo?field=demo.name

4、对接口进行SQL注入测试(单引号,双引号等),发现双引号报错,页面直接返回了flag

5、sql注入查询,回显位置是sqlite_version()
/demo/?field=demo.name"%20FROM%20"demo_user"%20union%20SELECT%20"1",sqlite_version(),"3"%20--

五、漏洞复用
1、sql注入 到 webshell
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)