描述
如果 order_by 是来自 Web 应用程序客户端的不受信任的输入,则 3.1.13 之前的 Django 3.1.x 和 3.2.5 之前的 3.2.x 允许 QuerySet.order_by SQL 注入。http://ip:port/vuln/?order=
参照大佬的复现Django SQL注入漏洞分析复现(CVE-2021-35042) - FreeBuf网络安全行业门户
复现
1.打开web界面
2.根据提示访问,根据返回的信息可得出order传入的值可控。
(当为“id”正序排列,当为“-id”反序排列)
3.利用堆叠+报错进行注入(flag在报错页面的下面)
vuln_collection.id);select updatexml(1,concat(0x7e,(select @@version)),1)%23