天天看點

DVWA 指令注入

DVWA 指令注入 實驗

首先我們探讨一下 什麼叫指令注入,指的是利用沒有驗證過的惡意指令或代碼,對網站或者伺服器進行滲透攻擊。

注入有很多種,并不僅僅是SQL注入。比如:

  • 指令注入(Command injection)
  • Eval注入(Eval injection)
  • 用戶端腳本攻擊(Script insertion)
  • 跨網站腳本攻擊(Cross Site Scripting,XSS)
  • SQL注入攻擊(SQL injetion)
  • 動态函數注入攻擊(Dynamic Variable Evaluation)
  • 序列化注入&對象注入

話不多說 開始上圖 ,我最近開始學習關于web開發,以至于要練習一下關于web漏洞的使用,就玩了一下

DVWA

LOW級

1.首先 來到這裡 先ping一下127.0.0.1

如果傳回的值有亂碼的,不要慌,找到WWW下的目錄,把DVWA的檔案夾下的dvwaPage.inc的php檔案。

把裡面的所有的“charset=utf-8”全部換成“charset=gb2312”,這裡網站裡使用utf-8未能正确解碼。

2.

127.0.0.1 ; ls 這裡說的是環境是centos

127.0.0.1 && net user windows下檢視使用者

若是windows下 則“;”不能使用 ,因為centos可以使用分号進行倆條指令執行

DVWA 指令注入

medium級

這裡我提前在靶機系統裡面建立了個flag.txt

構造我們的語句127.0.0.1 | cat /flag.txt

| 的意思是前面指令的輸出結果作為後面的指令的輸入。下面出來的是我自己亂打的幾行 意思就是 能夠檢視到flag.txt 的内容!

DVWA 指令注入

這道題注入題實際考的是對于源代碼的審計,根據它所過濾的管道符來進行繞過,能夠使得ping指令和下一條指令能夠正常使用,通過ping指令來得到下一條指令的執行,擷取到漏洞環境中自己所需要的資訊!

知識拓展:

  • ; 分号在linux指令執行的時候,可以直接執行幾條指令,指令和指令之間用分号隔開。
  • & 前面的指令執行後接着執行後面的指令
  • && 前面的指令執行成功後才可以執行下面的指令
  • | 前面的指令輸出結果為後面的指令輸入的内容
  • || 前面的指令執行失敗後才會執行後面的指令