惡意檔案執行攻擊


開發人員通常直接使用或連線潛在的易受攻擊的輸入與檔案,或假設輸入檔案是有效的。如果未正確檢查資料,則可能導致Web伺服器處理或呼叫易受攻擊的內容。

範例

一些經典的例子包括 -

  • .jsp檔案上傳到Web目錄中。
  • 上傳.gif進行調整大小。
  • 上傳大檔案。
  • 上傳包含程式碼(標籤)的檔案。
  • .exe檔案上傳到Web目錄中。

動手實踐

第1步 - 啟動WebGoat並導航到惡意檔案執行部分。如下所示-

第2步 - 為了測試演示,我們需要在上述位置上傳guest.txt

第3步 - 我們建立一個jsp檔案,以便在執行jsp時建立guest.txt檔案。由於我們執行jsp來建立檔案,因此jsp在此上下文中沒有任何顯示。

<HTML> 
   <% java.io.File file = new 
      java.io.File("C:\\Users\\username$\\.extract\\webapps\\WebGoat\\mfe_target\\guest.txt"); 
      file.createNewFile(); %> 
</HTML>

第4步 - 這裡將上傳jsp檔案並在上傳後複製相同的連結位置。上傳期望的是圖片,但這裡上傳的一個jsp檔案。

第5步 - 通過導航到jsp檔案,將不會向使用者傳送任何訊息。

第6步 - 現在重新整理已上傳jsp檔案的對談,將收到訊息「* Congratulations. You have successfully completed the lesson」。

預防機制

- 使用網站許可權保護網站。
- 採用Web應用安全對策。
- 了解IIS 7.0中的內建使用者和組帳戶。