天天看點

DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理

報錯情況:

  • 我在自己的kali linux虛拟機下面安裝了DVWA滲透測試系統以便自己進行滲透測試的基礎學習,在進行sqli(sql injection)-low級别的測試的時候,利用sqlmap進行注入,加上–os-shell參數擷取shell(即系統下的指令行,windows下的cmd,linux下的terminal),發現不能執行。
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
  • 最後總是報這樣的錯,unable to upload the file through the web file stager…:
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理

解決方法:

  • 在網上找了很多的相關的解釋,最後才知道搭建完DVWA之後要設定一些權限,相應的漏洞才可以利用,這裡的sqlmap注入就涉及到了檔案夾權限的設定:
  1. 進入DVWA的setup頁面:
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
  2. 檢視檔案的權限狀态,如果是處于紅色

    no

    的狀态,就說明不行了:
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    由上圖,我們需要設定這三個檔案或目錄的權限必須讓mysql這個使用者可讀,修改檔案或目錄的所有者和使用者組的指令分别是

    chown

    chgrp

    .
$ chown mysql /var/www/html/dvwa/hackable/uploads/
$ chgrp mysql /var/www/html/dvwa/hackable/uploads/
           
  1. 然後根據需要去修改檔案權限:

    修改/var/www/html/dvwa/hackable/uploads/為可寫的狀态:

    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理

    依次的,修改後面兩個檔案或者目錄的權限:

    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
  2. 修改完之後,重新開機mysql服務,重新開機apache2:
service mysql restart
service apache2 restart
           
  1. 打開浏覽器,重新進入DVWA的頁面,擷取cookie之後,再利用sqlmap注入,依次選擇語言,輸入絕對路徑,就可以成功拿到shell了:
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    可以看到上圖中成功上傳了兩個後門檔案到伺服器的目錄中去,第二個上傳的時候選擇yes以同樣的方式上傳就可以了。然後就可以拿到shell了,由于是linux下面的可以執行

    uname -a

    ifconfig

    檢視使用者名稱和ip配置的情況了,也可以做任何你想做的事了:
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理
    同時,也可以在浏覽器中通路你上傳上去的php頁面檔案,在這個頁面你就可以上傳本地你的任何的檔案了,這就相當于在對方的伺服器上面留了一個後門:
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理

附注:

  • 在同學的提示下,順便把windows下的也貼出來,主要思路是對的,隻是windows下改變檔案或目錄的方法不一樣而已,主要截圖如下:
    DVWA(linux下)利用sqlmap進行--os-shell注入不能成功的錯誤處理

後記:也許僅對我自己有幫助,如果照這樣修改了之後還是不行,就嘗試一下重新開機,重新建立資料庫,去mysql資料庫裡面賦予dvwa所有權限(這個明天我抽時間寫一下吧),願能幫助到你,這幾天發現在google上搜尋我的名字,好幾頁都是我的仔細的資訊,包括我的打CTF的資訊,部落格資訊,還有簡書的資訊,啧啧,感覺像是自己把自己XXX了的感覺,吓得我立刻把簡書的資訊删了,畢竟裡面有點小小的隐私。做資訊安全的,不一定說要把自己的資訊保護得水洩不通,就像最近講的通路控制一樣,你能看到的,也許隻是我想讓你看到的。