Metasploitable 學習筆記-文件上傳漏洞( file upload) & Reverse Shell

Kuro Huang
資安工作者的學習之路
8 min readMay 8, 2020

這是一篇系列文,有關看一些不同的Metasploitable介紹與教學的練習紀錄,偶爾打hack the box、rootme等滲透測試練習網站外其實沒有打過歷史悠久的Metasploitable,也相信搜尋到這篇也已經安裝好了Metasploitable2了。

Metasploitable2 :

一套安裝好各種Bug系統與網站的虛擬機,方便練習攻擊技術。這邊就不贅述安裝的部分,使用免費的Virtual box 與 Metasploitable2虛擬機即可。

官方的靶機攻擊指南:

基本知識: 網站目錄爆破

目錄爆破常常使用兩套工具,則一選擇即可,這邊使用dirb做教學

  • dirb
  • gobuster
  • wfuzz(可過濾一些條件篩選掉誤判的)

使用dirb掃描

dirb [target][wordlist]

wordlist可以選擇自己要的字典路徑或其他內建的字典

/usr/share/wordlists/dirb

Web滲透測試

Unrestricted File Upload 文件上傳漏洞

Low等級

首先我們開啟DVWA,帳號密碼是admin/password

將DVWA將安全等級調成低

我們點到左邊的upload ,並試著上傳一張圖片,成功後跳出圖片路徑

試著瀏覽看看上傳後提示的目錄,發現已成功上傳並好像可以執行

上傳木馬- 使用Weevely 產生php web shell

Weevely介紹:

weevely 基本語法 :

weevely generate [自訂執行密碼] [產生後放置路徑]

產生後竟然可以將檔案直接上傳上去,接著看到系統產生一串檔案路徑

將路徑複製到瀏覽器執行,這時候空白就是已成功

這時候回到Kali執行上傳的Shell路徑

weevely [target][密碼]

這邊可以繼續輸入就代表我們成功執行上傳的Shell了!

成功後先確認自己的權限,可使用幾個指令:

  1. whoami
  2. uname-a

之後使用ls或cd看一下是否有權限瀏覽其他目錄

Medium 等級

我們需要使用Burp,需要先將封包攔截打開

因為Medium等級的限制,我們不能將副檔名是jpg以外的丟上去,所以我們先將shell檔案改名jpg後上傳

攔截封包後可以修改或重送封包內容

Head內會有封包的資訊 ,我們要修改一下filename的檔名後再次上傳看看:

這邊順便科普一下filename前面的Content - disposition定義:

In a regular HTTP response, the Content-Disposition response header is a header indicating if the content is expected to be displayed inline in the browser, that is, as a Web page or as part of a Web page, or as an attachment, that is downloaded and saved locally.

Content- disposition的解說:

filename檔名改成 shellmedium.php後放行封包

成功上傳後執行我們的weevely!

High 等級

將等級調成High之後會發現上述手法都不可行,這次網站會針對上傳的檔案做檢查樣子,所以我們要bypass這個驗證,先將檔名改成jpg但是前面是.php

shell.php.jpg

回到weevely執行成功!

預防文件上傳漏洞

  1. 上傳檔案前後應該要檢查檔案類型與副檔名
  2. 定期檢查上傳後檔案的副檔名是否有異常
  3. 限制檔案大小

之後會繼續寫這系列有關的筆記,希望之後可以做個目錄表列一下各個主題的網址方便搜尋與瀏覽。

https://medium.com/blacksecurity/tagged/ctf
若您喜歡我的文章,歡迎按下「拍手」與Liker按讚給我支持並轉發給你的朋友們(可以多拍幾下手喔),或是「Follow」我,讓我提供文章給您。

Facebook 粉絲專頁 剛開始建立經營 不會洗版(沒有時間) !!包含資安與投資的資訊,歡迎追蹤我並分享。

--

--

Kuro Huang
資安工作者的學習之路

對教育充滿期待的資安從業者,現任ISC2台北分會理監事會成員,喜歡用專業興趣交朋友建立友誼。曾擔任資安管理師與四大會計師事務所資安顧問,希望對資安社群盡一點心力,並期望自己與身旁的人能有所進步,歡迎喝咖啡聊資安。希望保持著定期參與資安社群活動。個人介紹網站https://portaly.cc/kurohuang